Apollo uses role-based access controls (RBAC) to determine what operations a user is authorized to perform. RBAC is a flexible authorization model where Teams can gain permissions to a set of operations based on their assigned roles. These roles can be granted for all resources in Apollo of a given type, like Release Channels, or for a specific resource of that type, such as the STAGING
Release Channel. All users in the Team will be able to perform the operations that the role grants.
You can define who can manage permissions in Apollo by selecting Manage on the top right of the Permissions tab of the Settings & Configuration page.
There are two possible roles that you can grant a team:
You can manage roles for all resources of a given type in the Permissions tab of the Settings & Configuration page. You can configure global RBAC settings for the following resources:
Select a resource from the left panel. You can add a Team using the Add more teams... search bar. Then select the dropdown to the right of the Team and choose the relevant role(s).
You can view the possible roles for a resource by hovering over the role to the right of the resource in the left panel.
The possible roles for Release Channels are the following:
The possible roles for vulnerability suppressions are the following:
There are three possible roles for vulnerability SLA settings:
The possible roles for Products are the following:
The possible roles for labels are the following:
The possible roles for Environments and Entities are the following:
To manage roles for a specific Product, open the Product page and select Actions in the top right corner of the page, then select Edit roles....
You can manage roles for a specific Release Channel in the Release channels tab of the Settings & Configuration page. Select the Release Channel you want to edit, and then select Edit in the Channel Details panel.
This will open the Permissions tab of the Release Channel settings menu. You can add a new Team using the search bar. To edit the roles for a Team, select the dropdown to the right of the Team name.
You can manage roles for a specific label in the Labels tab of the Settings & Configuration page. Hover over the label that you want to manage, then select Edit on the right of the label.
This will open the Permissions tab of the label settings menu. You can add a new Team using the search bar. To edit the roles for a Team, select the dropdown to the right of the Team name.
To apply labels to a resource, you must have the Label Contributor role as well as the required permissions on the resource. For example, to apply a label to an Environment, you must have the Label Contributor role for that label and be an Environment editor.
To manage roles for an Environment, select Edit roles... from the Actions dropdown located in the top right corner of the Environment home page.
You can manage roles for an Environment in the Roles tab of the Environment settings menu. You can add a new Team using the search bar. To edit the roles for a Team, select the dropdown to the right of the Team name.
You can use the Manage default entity roles for this environment section to manage roles for all Entities in the Environment. Learn more about RBAC for Entities.
You can manage roles for all Entities in an Environment in the Environment's settings. These roles are inherited by every Entity in the Environment. Configuring additional roles for an Entity will only add these global settings and will not remove permissions.
To manage roles for a single Entity, select Edit roles... from the Actions dropdown located in the top right corner of the Entity home page.
This will open a menu where you can configure RBAC settings for the Entity. You can add a new Team using the search bar. To edit the roles for a Team, select the dropdown to the right of the Team name.
The possible roles for Entities are the same as those for Environments, only they are applied at the Entity level and are not inherited for other Entiites.