Skip to main content

Role

Overview

The Role entity represents a specific position, responsibility, or function that a person may hold within the organization. Roles are used to define access levels and permissions for personnel. Each role consists of a set of permissions and required security levels, which determine what actions a person assigned to that role can perform. If role requirement is ANY_OF then a person only needs one of the specified security levels to gain all of the permissions associated with the role. If set to ALL_OF then a person must have all of the specified security levels to gain the permissions associated with the role.

Table Structure

The following table outlines the SQL columns for the roles table, providing a brief description of each, along with sample data where applicable.

ColumnTypeDescriptionExample
idString (ULID)Unique identifier for the role.01JAP8RJBN-8ZTPXSGY-J9GSDPE1
enabledBooleanIf the entity is enabled or not.true
created_dateDateTimeDate the entity was created.2024-12-31T19:48:44Z
created_byStringPerson who created the entity.TamakiMES
modified_dateDateTimeDate the entity was modified. Value is null upon creation, and gets initially populated upon the first edit.2024-12-31T19:48:44Z
modified_byStringLast person to modify the entity. Value is null upon creation, and gets initially populated upon the first edit.TamakiMES
notesStringNotes about the entity.This entity has these extra notes
spare1StringThe first spare column that can be used for additional context on the entity.some extra context 1
spare2StringThe second spare column that can be used for additional context on the entity.some extra context 2
spare3StringThe third spare column that can be used for additional context on the entity.some extra context 3
security_levelsString (CSV)Comma-separated list of Ignition security levels required for this role.Authenticated/Roles/Administrator,SecurityZones/Warehouse
permissionsString (CSV)Comma-separated list of MES permissions granted by this role.MATERIALS.WRITE,INVENTORY.READ
role_requirement_typeEnumSpecifies if all or any security levels are required to grant permissions. See below.ALL_REQUIRED

Field Details

security_levels

Comma-separated list of Ignition security levels required for this role. Example: Authenticated/Roles/Administrator,SecurityZones/Warehouse. Security levels are hierarchical, so specifying a higher-level security level will also satisfy requirements for any lower-level security levels. For example, if a role requires Certification/Warehouse/Operation, a user with Certification/Warehouse will also satisfy that requirement.

permissions

Comma-separated list of MES permissions granted by this role. Example: MATERIALS.WRITE,INVENTORY.READ. Permissions are hierarchical, so if a user is granted a higher-level permission, they will also have access to any lower-level permissions. For example, if a user has permission for INVENTORY.WRITE, they will also have permission for MATERIALS.WRITE.CONSUME`.

role_requirement_type

Specifies if all security levels are required (ALL_OF) or if at least one is sufficient (ANY_OF) to grant the permissions. This uses the RoleRequirementType enum.

RoleRequirementType enum values:

  • ALL_OF: All listed security levels are required.
  • ANY_OF: At least one listed security level is required.