SudoSOS Back-end API / rbac / RBACService
Class: RBACService ​
Constructors ​
Constructor ​
new RBACService(): RBACService;Returns ​
RBACService
Methods ​
addPermissions() ​
static addPermissions(roleId, permissions): Promise<Permission[]>;Add zero or more new permissions
Parameters ​
| Parameter | Type | Description |
|---|---|---|
roleId | number | - |
permissions | PermissionRule[] | - |
Returns ​
Promise<Permission[]>
asPermissionResponse() ​
static asPermissionResponse(permissions): PermissionResponse[];Map list of permissions to an entity response
Parameters ​
| Parameter | Type | Description |
|---|---|---|
permissions | Permission[] | - |
Returns ​
asRoleResponse() ​
static asRoleResponse(role): RoleResponse;Converts a Role object to an RoleResponse, which can be returned in the API response. If any permissions are present, those are parsed as well.
Parameters ​
| Parameter | Type | Description |
|---|---|---|
role | Role | The role definitions to parse |
Returns ​
createRole() ​
static createRole(params): Promise<Role>;Create an new role with the given parameters
Parameters ​
| Parameter | Type | Description |
|---|---|---|
params | UpdateRoleRequest | - |
Returns ​
Promise<Role>
definitionToRules() ​
static definitionToRules(def): PermissionRule[];Convert a human-readable permission definition to a list of database permission rules
Parameters ​
| Parameter | Type | Description |
|---|---|---|
def | PermissionDefinition | - |
Returns ​
findPermission() ​
static findPermission(permissions, toFind): PermissionRule;Parameters ​
| Parameter | Type |
|---|---|
permissions | PermissionRule[] |
toFind | PermissionRule |
Returns ​
getOptions() ​
static getOptions(params): FindManyOptions<Role>;Build findOptions object
Parameters ​
| Parameter | Type | Description |
|---|---|---|
params | RoleFilterParameters | - |
Returns ​
FindManyOptions<Role>
getRoles() ​
static getRoles(params?, take?): Promise<[Role[], number]>;Get a tuple with a list of all roles and the total number of roles matching the parameters
Parameters ​
| Parameter | Type | Description |
|---|---|---|
params | RoleFilterParameters | - |
take | PaginationParameters | - |
Returns ​
Promise<[Role[], number]>
getRoleUsers() ​
static getRoleUsers(roleId, take?): Promise<[User[], number]>;Gets all users which are assigned to a certain role
Parameters ​
| Parameter | Type | Description |
|---|---|---|
roleId | number | - |
take | PaginationParameters | - |
Returns ​
Promise<[User[], number]>
removePermission() ​
static removePermission(roleId, permissionRule): Promise<void>;Remove an existing permission
Parameters ​
| Parameter | Type | Description |
|---|---|---|
roleId | number | - |
permissionRule | Omit<PermissionRule, "attributes"> | - |
Returns ​
Promise<void>
removeRole() ​
static removeRole(roleId): Promise<void>;Remove an existing role. Cannot delete system default roles
Parameters ​
| Parameter | Type | Description |
|---|---|---|
roleId | number | - |
Returns ​
Promise<void>
rulesToDefinition() ​
static rulesToDefinition(rules): PermissionDefinition;Convert a list of database permission rules to a human-readable permissions object
Parameters ​
| Parameter | Type | Description |
|---|---|---|
rules | PermissionRule[] | - |
Returns ​
updateRole() ​
static updateRole(roleId, params): Promise<Role>;Update an existing role with the given parameters
Parameters ​
| Parameter | Type | Description |
|---|---|---|
roleId | number | - |
params | UpdateRoleRequest | - |
Returns ​
Promise<Role>