Application authorization defines what artifacts, features, and user interfaces users can access. In Appian, every object has a security rolemap that specifies the different roles and actions that apply to the object. Adding users to an object rolemap allow them to perform the different actions allowed by the specified role on this object.
For example, adding a user to the viewer role of a datastore object will allow the user to read and write data from and to all the entities (and underlying database tables) declared in the datastore.
For more information, refer to Object Security.
Users should not directly be assigned to object security rolemaps because changing what a user can see would require modifying the object configuration. It is not a dynamic setup and it would require deploying a new version of the application for every change.
Instead, users should be members of groups which in turn are assigned to the object security rolemaps. This provides the most flexibility and allows runtime configuration of what users have access to. By adding or removing users from groups, one can change what applications or features users can access and what operations users can perform.
When thinking about securing an application, there are 2 categories of groups to consider:
In majority of cases you should not have to replicate your entire organizational structure using group hierarchies in Appian. Instead create (and/or synchronize) groups only as they are needed for configuring specific application roles or security. Similarly, there is often no need to replicate Appian application group structures in LDAP or other external directory systems.