ACCESS CONTROL

Roles

Roles in Phase define the level of access and permissions granted to users within an organization. They determine what actions a user can perform and what resources they can access. Phase offers both managed roles with predefined permissions and the ability to create custom roles for more specific access control needs.

Assigning Roles to Users

To assign a role to a user or change a user's role:

  1. Navigate to the Access Control page from the sidebar and click on the Members tab.
    1-navigate-to-access-control
  2. Find the user whose role you want to update and click the manage button.
    2-manage-user
  3. In the Role section, select the desired role from the dropdown.
    3-click-current-role
  4. Once selected, you will see a toast notification confirming that the role has been updated.

Managed Roles

Phase provides managed roles out of the box to every organization.

Owner

The organization owner. This role is automatically assigned when a user creates a new organization. It is unique to a single user and grants access to all resources and actions. Ownership can be transferred to another Admin member from the Organisation Settings.

Organization-level permissions:

ResourceAccessReadCreateUpdateDelete
OrganisationFull access✅✅✅✅
BillingFull access✅✅✅✅
AppsFull access✅✅✅✅
MembersFull access✅✅✅✅
Member Personal Access TokensFull access✅✅✅✅
Service AccountsFull access✅✅✅✅
Service Account TokensFull access✅✅✅✅
External IdentitiesFull access✅✅✅✅
RolesFull access✅✅✅✅
Integration CredentialsFull access✅✅✅✅
Network Access PoliciesFull access✅✅✅✅
LogsFull access✅
TeamsFull access✅✅✅✅
SCIMFull access✅✅✅✅
SSOFull access✅✅✅✅
Log StreamsFull access✅✅✅✅

App-level permissions:

ResourceAccessReadCreateUpdateDelete
EnvironmentsFull access✅✅✅✅
SecretsFull access✅✅✅✅
DynamicSecretLeasesFull access✅✅✅✅
RotatingSecretsFull access✅✅✅✅
LockboxFull access✅✅✅✅
LogsFull access✅✅✅✅
MembersFull access✅✅✅✅
Service AccountsFull access✅✅✅✅
IntegrationsFull access✅✅✅✅
Encryption ModeFull access✅✅
TeamsFull access✅✅✅✅

Admin

Admin users have access to most resources and permissions, and have global access to all Apps and Environments.

Organization-level permissions:

ResourceAccessReadCreateUpdateDelete
OrganisationCustom access✅❌✅❌
BillingFull access✅✅✅✅
AppsFull access✅✅✅✅
MembersFull access✅✅✅✅
Member Personal Access TokensFull access✅✅✅✅
Service AccountsFull access✅✅✅✅
Service Account TokensFull access✅✅✅✅
External IdentitiesFull access✅✅✅✅
RolesFull access✅✅✅✅
Integration CredentialsFull access✅✅✅✅
Network Access PoliciesFull access✅✅✅✅
LogsFull access✅
TeamsFull access✅✅✅✅
SCIMFull access✅✅✅✅
SSOFull access✅✅✅✅
Log StreamsFull access✅✅✅✅

App-level permissions:

ResourceAccessReadCreateUpdateDelete
EnvironmentsFull access✅✅✅✅
SecretsFull access✅✅✅✅
DynamicSecretLeasesFull access✅✅✅✅
RotatingSecretsFull access✅✅✅✅
LockboxFull access✅✅✅✅
LogsFull access✅✅✅✅
MembersFull access✅✅✅✅
Service AccountsFull access✅✅✅✅
IntegrationsFull access✅✅✅✅
Encryption ModeFull access✅✅
TeamsFull access✅✅✅✅

The Owner and Admin roles have global access. Learn more about global access here.

Manager

Management users with broad access to environments, secrets, and service accounts at the organization level. Requires explicit access to Apps and Environments.

Organization-level permissions:

ResourceAccessReadCreateUpdateDelete
OrganisationRead access✅❌❌❌
BillingFull access✅✅✅✅
AppsFull access✅✅✅✅
MembersFull access✅✅✅✅
Member Personal Access TokensNo access❌❌❌❌
Service AccountsFull access✅✅✅✅
Service Account TokensFull access✅✅✅✅
External IdentitiesFull access✅✅✅✅
RolesFull access✅✅✅✅
Integration CredentialsFull access✅✅✅✅
Network Access PoliciesFull access✅✅✅✅
LogsFull access✅
TeamsFull access✅✅✅✅
SCIMNo access❌❌❌❌
SSONo access❌❌❌❌
Log StreamsNo access❌❌❌❌

App-level permissions:

ResourceAccessReadCreateUpdateDelete
EnvironmentsFull access✅✅✅✅
SecretsFull access✅✅✅✅
DynamicSecretLeasesFull access✅✅✅✅
RotatingSecretsFull access✅✅✅✅
LockboxFull access✅✅✅✅
LogsFull access✅✅✅✅
MembersFull access✅✅✅✅
Service AccountsFull access✅✅✅✅
IntegrationsFull access✅✅✅✅
Encryption ModeFull access✅✅
TeamsFull access✅✅✅✅

Service

Default role for Service Accounts, providing programmatic access to secrets without access to other organization or app resources.

Organization-level permissions:

ResourceAccessReadCreateUpdateDelete
OrganisationNo access❌❌❌❌
BillingNo access❌❌❌❌
AppsCustom access✅✅✅❌
MembersRead access✅❌❌❌
Member Personal Access TokensNo access❌❌❌❌
Service AccountsRead access✅❌❌❌
Service Account TokensRead access✅❌❌❌
External IdentitiesRead access✅❌❌❌
RolesRead access✅❌❌❌
Integration CredentialsRead access✅❌❌❌
Network Access PoliciesRead access✅❌❌❌
LogsNo access❌
TeamsNo access❌❌❌❌
SCIMNo access❌❌❌❌
SSONo access❌❌❌❌
Log StreamsNo access❌❌❌❌

App-level permissions:

ResourceAccessReadCreateUpdateDelete
EnvironmentsFull access✅✅✅✅
SecretsFull access✅✅✅✅
DynamicSecretLeasesCustom access✅✅❌❌
RotatingSecretsRead access✅❌❌❌
LockboxNo access❌❌❌❌
LogsNo access❌❌❌❌
MembersRead access✅❌❌❌
Service AccountsRead access✅❌❌❌
IntegrationsRead access✅❌❌❌
Encryption ModeRead access✅❌
TeamsRead access✅❌❌❌

Developer

Developers have limited permissions at the organization level and must be given explicit access to Apps and Environments.

Organization-level permissions:

ResourceAccessReadCreateUpdateDelete
OrganisationNo access❌❌❌❌
BillingNo access❌❌❌❌
AppsRead access✅❌❌❌
MembersRead access✅❌❌❌
Member Personal Access TokensNo access❌❌❌❌
Service AccountsNo access❌❌❌❌
Service Account TokensNo access❌❌❌❌
External IdentitiesNo access❌❌❌❌
RolesRead access✅❌❌❌
Integration CredentialsCustom access✅✅✅❌
Network Access PoliciesRead access✅❌❌❌
LogsFull access✅
TeamsRead access✅❌❌❌
SCIMNo access❌❌❌❌
SSONo access❌❌❌❌
Log StreamsNo access❌❌❌❌

App-level permissions:

ResourceAccessReadCreateUpdateDelete
EnvironmentsCustom access✅✅✅❌
SecretsFull access✅✅✅✅
DynamicSecretLeasesCustom access✅✅❌❌
RotatingSecretsRead access✅❌❌❌
LockboxFull access✅✅✅✅
LogsRead access✅❌❌❌
MembersRead access✅❌❌❌
Service AccountsCustom access❌✅❌❌
IntegrationsFull access✅✅✅✅
Encryption ModeFull access✅✅
TeamsRead access✅❌❌❌

Custom Roles

In addition to the managed roles, Phase allows you to create custom roles tailored to your organization's specific security needs.

Creating Custom Roles

  1. Navigate to the Access Control page from the sidebar and click on the Roles tab.
    1-navigate-to-access-control
    2-navigate-to-access-control-roles
  2. Click on "Create Role".
    3-click-create-role
  3. Provide a name and description for the role. (Role name is mandatory)
    4-create-a-new-role
  4. Expand the Organisation and the App permissions sections by clicking on each of them and select the desired policy permissions by clicking the dropdown for each resource in the Access column and selecting one of the following:
    • 🚫 No access
    • 👁️ Read access
    • ❄️ Full access
    • 📝 Custom access

Alternatively, you may provision a custom access policy by toggling switches in each of the CRUD operations for a given resource.

  1. Save the new role.

Resource Permissions Cheat Sheet

Some actions require a combination of permissions across multiple resources. Below is a list of common actions that require a combination of two or more permissions:

  • To update the role of a user in your Organization:
    • Members:update
    • Roles:read
  • Adding members to Apps or managing the scope of a member's access to Environments:
    • AppMembers:update
    • Members:read
    • Environments:read
  • Updating the third party integration credentials used for a given integration in an App:
    • Integrations:update
    • IntegrationCredentials:read
  • Creating a new third party integration inside of an App
    • Integrations:create
    • Environments:read
  • Enable or disable SSE (Server-side Encryption):
    • EncryptionMode:update
    • Environments:read
    • Access to all environments in the App (only to enable SSE)
  • To view and delete other users' Personal Access Tokens:
    • MemberPersonalAccessTokens:read
    • MemberPersonalAccessTokens:delete
  • Adding or removing a Team's access to an App:
    • Teams:create or Teams:delete (app-level)
    • Teams:read (organisation-level)
  • Managing a Team's environment scope within an App:
    • Teams:update (app-level)
    • Teams:read (organisation-level)
  • To Manage Network Access Policies of a User or Service Account:
    • Members:read
    • Members:update
    • ServiceAccounts:read
    • ServiceAccounts:update
    • NetworkAccessPolicies:read

Editing Custom Roles

  1. Navigate to the Access Control page from the sidebar and click on the Roles tab.
    1-navigate-to-access-control
    2-navigate-to-access-control-roles
  2. Find the custom role you want to edit, hover over it and click ⚙️ Manage.
    3-edit-custom-role-click-manage
  3. Modify the role as needed.
  4. Save your changes.
    4-save-modified-role