A persistent class that defines the security role.
[ImageName("BO_Role")] [MapInheritance(MapInheritanceType.ParentTable)] public class SecuritySystemRole : SecuritySystemRoleBase, ISupportChildRoles
<ImageName("BO_Role")> <MapInheritance(MapInheritanceType.ParentTable)> Public Class SecuritySystemRole Inherits SecuritySystemRoleBase Implements ISupportChildRoles
It is recommended to use the Allow/Deny Permission Policy. For this purpose, migrate from SecuritySystemRole to PermissionPolicyRole. If you use Entity Framework as the ORM system, you may also need to perform a migration.
In eXpressApp Framework applications, permissions are not assigned to a user directly. Users have roles, which in turn are characterized by a permission set. So, each user has one or more roles that determine what actions can be performed. The list of users associated with the current role is exposed via the SecuritySystemRole.Users property. Roles can be organized in a hierarchical structure. The SecuritySystemRole.ParentRoles and SecuritySystemRole.ChildRoles properties define this structure. In this instance, roles taken into account for the current user are:
- roles that are directly assigned to the user;
- all child roles of directly assigned roles (recursively).
For instance, you can specify a set of low-level roles, and then associate them with high-level roles. These high-level roles can be assigned to users.
Refer to the How to: Implement Custom Security Objects (Users, Roles, Operation Permissions) topic to see an example on implementing a custom Role.
Related GitHub Examples
The following code snippets (auto-collected from DevExpress Examples) contain references to the SecuritySystemRole class.
The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.