Reset System Roles

Reset System Roles is an admin task designed to restore the admin user, teams, permissions and standard role functionality. It provides an easy mechanism for recovering from any accidental changes that resulted in limited access to the system.

Standard Roles

The system has standard roles [more info] which are maintained by the platform and are automatically updated on every upgraded. These roles are Admin, and Standard, which include all the default set of functions those roles would typically require. Any custom code you've created, or use of our accelerators, loaded into our AddIn Modules also update the Admin and Standard roles to ensure users of those roles can have default access to everything required.

Admin User

The system always has a default Admin User to which access can always be reset for that user. When creating the system against a blank database that admin user has the following details:

You should always change this users login and password whenever you initially start using the system.

Account Maintenance holds a link to the admin user for each account (LemonEdge can be used as a multi-tenanted system), and thus knows precisely which user to provide default admin access to when reset.

Standard Teams

The system has 2 standard teams by default: Admin, and Standard User. These teams have all the permissions setup correctly for providing Admin access to everything, and Standard User read-only access. Again these teams are maintained by the system to provide the correct access levels for the users that are members.


Role/Team Maintenance

Because the system will always update the standard roles and teams it is recommended that you don't manually change them. Your changes will just be lost and overwritten the next time the system upgrades anyway. Instead they should be seen as templates for how to create your own roles/teams. You can copy the Admin Role (or Team), and change it's name and functionality to match your requirements. You should then assign all users to roles/teams you create. The default admin user will always be automatically assigned by the system to the default admin role/team to make sure they always have access to everything in the system and you don't lock everyone out of certain functionality.


Resetting System Roles

The system does not have any views for this function, it is a back-end process. Resetting the system roles performs the following sequence of functions:

  1. If the admin user doesn't exist, re-creates them.
  2. Updates (or creates if missing) the Admin and Standard User roles to have the default menu including any AddIn changes to the menu.
  3. Updates (or creates if missing) the Admin and Standard User teams to have the default set of permissions for all entities in the system, including any AddIn, or Custom Entities, entities.
  4. Ensures the Admin User is a member of these teams and roles.
  5. Clears all server caches (web and task servers) so they are guaranteed to provide the new changes when asked.
  6. Drops all SQL Wrapper/DataSets queries and re-creates them, including importing any custom SQL Wrappers, Data Sets, etc from the standard system or any AddIns.

The system then prompts you if you want to refresh your application to load in any of the new changes. If you do so you should see the standard roles have been reset back to their default configuration along with permissions and everything else. This should enable you to recover from any accidental configuration changes you have made. 

It's important to note the only user this is reset for is the Admin User. You will need to be able to login to that user to gain access to the Admin roles/permissions if you aren't already a member of those teams/roles.
In other words don't lose your admin password or disable that user (without updating account maintenance to point to a different default admin user).