1. With program create three access groups:
- guest - common access, readonly, no password required.
- user - full readonly access, password required.
- admin - full access to his graduation year, password required.
First access group guest is for common access. For example, users can view only name of the person and graduation year.
Second access group user is for registered users that have right to view all data in the database.
Third access group admin is for administrators that will have full access to the 40 years of alumni database - edit and make changes in the records of their graduation year.
2. Create Users table with Id, Name, Password, GraduationYear and AccessLevel fields - in this table you will store data on registered users including admin users.
3. Create Custom View of the table for the admin group:
- Proceed to the Datasource tables tab and add Custom view for the table.
4. Create Login page:
- Proceed to the Security tab. Choose "Database" option and select Table, Username and Password fields.
5. Assign different permissions (according to graduation year) for records in the table:
- Proceed to the Advanced security settings dialog on the Security tab.
- Choose "Users can see other users data, can edit their own data only" option and take Id field as OwnerId field for the table.
- Choose "Users can see other users data, can edit their own data only" option and take GraduationYear field as OwnerId field for the Custom view of the table.
- Check "Add 'Login as guest' with readonly access" option.
6. Set up permissions (according to the access level) for the pages:
- Proceed to the User Group Permissions dialog on the Security tab.
- Choose AccessLevel field as GroupID field.
- Create admins access group (guest, <Default> groups are created by default).
- Check all operations (Add, Edit, List/View, etc.) for the users (generated as <Default>) and guest groups to the table and uncheck everything else.
- Check all operations for the admin group (created by default) to the Custom view of the table and uncheck everything else.