Expand description
§ManageRole
Role + permission types for the RBAC engine. Each Role
holds a deduplicated permission list; each Permission
lives in a category.action namespace and carries an
IsSensitive flag for elevated audit logging. The
Create* factories build the standard user /
developer / admin triple.
Modules§
- Create
Admin Role - Standard
adminrole - full access including system / external / execute androle.managefor changing role definitions at runtime. - Create
Developer Role - Standard
developerrole - read + write across files and storage; read-only on config. - Create
Standard Permissions - Build the standard
Permission::Structset covering file, config, storage, system, and admin categories. Sensitive permissions (config.update,system.*,admin.*,role.manage) are flagged so audit logging picks them up. - Create
Standard Roles - Build the standard
user/developer/adminrole triple. Used byValidator::Struct::InitializeDefaultsand by tests. - Create
User Role - Standard
userrole - read-only access to file, config, and storage subsystems. The default role assigned when no roles are supplied in aSecurityContext. - Permission
Permission::Struct- RBAC permission descriptor.category.actionname shape (validated byValidate), human description, category bucket, and anIsSensitiveflag that drives elevated audit logging in theLogEventmodule.- Role
Role::Struct- RBAC role descriptor. Builder methods deduplicate permissions on insert, exposeHasPermission/PermissionCountlookups, andValidateenforces thecategory.actionpermission name shape so misconfigured roles fail loudly at registration.