Role

Role Type

Represents a role in the system's role-based access control (RBAC) model. Roles define sets of permissions through access policies and can be assigned to users and groups.

Fields

Field
Type
Description

id

ID!

Unique identifier of the role

createdAt

Time!

Creation timestamp

createdBy

UUID!

User identifier who created the role

updatedAt

Time

Last update timestamp

updatedBy

UUID

User identifier who last updated the role

deletedAt

Time

Deletion timestamp

deletedBy

UUID

User identifier who deleted the role

tenantID

UUID!

Tenant identifier

name

String!

Name of the role

description

String

Description of the role

users

[User!]

Users assigned to this role

groups

[Group!]

Groups assigned to this role

policies

[AccessPolicy!]

Access policies that define the permissions for this role

Interfaces

  • Node

Usage Example

Relations

  • Role M:N User: A role can be assigned to multiple users, and users can have multiple roles

  • Role M:N Group: A role can be assigned to multiple groups, and groups can have multiple roles

  • Role 1:N AccessPolicy: A role has multiple access policies that define its permissions

Purpose

Roles are central to the system's RBAC implementation. They act as containers for access policies, which define what resources users can access and what actions they can perform. By assigning roles to users or groups, administrators can efficiently manage permissions across the system. The policies relationship connects roles to specific access controls defined in AccessPolicy entities.

Last updated

Was this helpful?