Available custom permissions
The following permissions are available. You can add these permissions in any combination
to a base role to create a custom role.
Some permissions require having other permissions enabled first. For example, administration of vulnerabilities (admin_vulnerability
) can only be enabled if reading vulnerabilities (read_vulnerability
) is also enabled.
These requirements are documented in the Required permission
column in the following table.
Compliance management
Name
| Required permission
| Description
| Introduced in
| Feature flag
| Enabled in
|
admin_compliance_framework
|
| Create, read, update, and delete compliance frameworks. Users with this permission can also assign a compliance framework label to a project, and set the default framework of a group.
| GitLab 17.0
|
|
|
Continuous delivery
Name
| Required permission
| Description
| Introduced in
| Feature flag
| Enabled in
|
manage_deploy_tokens
|
| Manage deploy tokens at the group or project level.
| GitLab 17.0
|
|
|
Groups and projects
Name
| Required permission
| Description
| Introduced in
| Feature flag
| Enabled in
|
admin_group_member
|
| Add or remove users in a group, and assign roles to users. When assigning a role, users with this custom permission must select a role that has the same or fewer permissions as the default role used as the base for their custom role.
| GitLab 16.5
| admin_group_member
| GitLab 16.6
|
archive_project
|
| Allows archiving of projects.
| GitLab 16.6
| archive_project
| GitLab 16.7
|
remove_group
|
| Ability to delete or restore a group. This ability does not allow deleting top level groups. Review the Retention period settings to prevent accidental deletion.
| GitLab 16.10
|
|
|
remove_project
|
| Allows deletion of projects.
| GitLab 16.8
|
|
|
Infrastructure as code
Name
| Required permission
| Description
| Introduced in
| Feature flag
| Enabled in
|
admin_terraform_state
|
| Execute terraform commands, lock/unlock terraform state files, and remove file versions.
| GitLab 16.8
|
|
|
Secrets management
Name
| Required permission
| Description
| Introduced in
| Feature flag
| Enabled in
|
admin_cicd_variables
|
| Create, read, update, and delete CI/CD variables.
| GitLab 16.10
|
|
|
Security policy management
Source code management
Name
| Required permission
| Description
| Introduced in
| Feature flag
| Enabled in
|
admin_merge_request
|
| Allows approval of merge requests.
| GitLab 16.4
|
|
|
admin_push_rules
|
| Configure push rules for repositories at the group or project level.
| GitLab 16.11
| custom_ability_admin_push_rules
|
|
read_code
|
| Allows read-only access to the source code in the user interface. Does not allow users to edit or download files, clone or pull repositories, view source code in an IDE, or view merge requests for private projects.
| GitLab 15.7
| customizable_roles
| GitLab 15.9
|
System access
Name
| Required permission
| Description
| Introduced in
| Feature flag
| Enabled in
|
manage_group_access_tokens
|
| Create, read, update, and delete group access tokens. When creating a token, users with this custom permission must select a role for that token that has the same or fewer permissions as the default role used as the base for the custom role.
| GitLab 16.8
|
|
|
manage_project_access_tokens
|
| Create, read, update, and delete project access tokens. When creating a token, users with this custom permission must select a role for that token that has the same or fewer permissions as the default role used as the base for the custom role.
| GitLab 16.5
| manage_project_access_tokens
| GitLab 16.8
|
Vulnerability management
Name
| Required permission
| Description
| Introduced in
| Feature flag
| Enabled in
|
admin_vulnerability
|
| Edit the vulnerability object, including the status and linking an issue. Includes the read_vulnerability permission actions.
| GitLab 16.1
|
|
|
read_dependency
|
| Allows read-only access to the dependencies and licenses.
| GitLab 16.3
|
|
|
read_vulnerability
|
| Read vulnerability reports and security dashboards.
| GitLab 16.1
|
|
|
Webhooks
Name
| Required permission
| Description
| Introduced in
| Feature flag
| Enabled in
|
admin_web_hook
|
| Manage webhooks
| GitLab 17.0
|
|
|