RBAC (Role-Based Access Control)

Role-based access control (RBAC) determines what each member of your organization can do on the Chainlink Platform. This page describes the roles available for each product, what each role can do, and how to manage roles for your organization members.

How RBAC works

Each organization member is assigned a role for each product. The role determines the permissions the member has for that product. For example, a member can be a CRE Admin and an ACE Viewer at the same time.

  • A member can hold a different role for each product.
  • A member can have no role for a product. A member without a role for a product has no access to that product.
  • Roles are managed per product. A member's role for one product does not affect their access to other products.

The Owner role

The first user to create an organization is automatically assigned the Owner role. The Owner role includes every permission for every product, including all future products. This covers:

  • Managing members and their roles for every product
  • Creating and managing API keys
  • Managing organization settings and addresses

There is exactly one Owner per organization, and the Owner role cannot be transferred.

Roles and permissions

Each product section below starts with a summary of its roles, followed by a table of the permissions each role includes. The Name column matches the label shown in the app when you preview a role's permissions or select API key permissions. A check mark indicates that the role includes the permission. The Owner role includes every permission in every table.

Reading permission IDs

Each permission has an ID in the format product:resource:action. You see these IDs when you choose API key permissions, and in error messages when a request is missing a permission. Most IDs follow the same few patterns:

  • read permissions let you view a resource. write permissions let you create and update it.
  • archive:write permissions let you archive a resource. Archiving is separate from write because archiving some resources also affects everything built on them. For this reason, some roles can create and update a resource but not archive it.
  • A suffix after a slash limits a permission to one scope. For example, platform:member_role:write/cre allows changing CRE roles only, and platform:member_role:write/* allows changing roles for every product.
  • Permissions that start with platform: but end with a product scope, such as platform:limits:write/cre, are organization-level permissions limited to that product. They appear in that product's table.

Chainlink Platform roles control access to organization-level features such as members, API keys, addresses, and limits. Every member has a Platform role.

RoleDescription
AdminFull access to manage the Chainlink Platform for your organization: invite and remove members, change any member's roles, and manage API keys.
UserFor developers and operations team members. Can view organization information and members, and can view and create API keys.
NamePermissionDescriptionAdminUser
Organization: Readplatform:organization:readView organization information.✓✓
Organization: Writeplatform:organization:writeEdit organization information.✓
Member: Readplatform:member:readView the members of the organization.✓✓
Member invite: Writeplatform:member_invite:writeInvite new members to the organization.✓
Member: Writeplatform:member:writeRemove members from the organization.✓
Member role: Write (All products)platform:member_role:write/*Change members' roles for every product.✓
Owner address: Readplatform:owner_address:readView the organization's addresses in the address book.✓✓
API key: Readplatform:api_key:readView the organization's API keys.✓✓
API key: Writeplatform:api_key:writeCreate and edit API keys.✓✓
Limits: Read (Platform)platform:limits:read/platformView organization-level limits, such as the maximum overdraft.✓✓
Limits: Write (Platform)platform:limits:write/platformChange organization-level limits that support self-serve changes.✓

Only the Owner can change limits for every product (platform:limits:write/*). Product Admin roles include the product-scoped version instead. For example, the CRE Admin role includes platform:limits:write/cre. Only limits that support self-serve changes can be changed this way. To change other limits, contact Chainlink.

CRE

CRE roles control access to workflows, secrets, limits, and workflow owner addresses.

RoleDescription
AdminFull CRE access, including managing secrets, changing CRE limits and roles, and linking workflow owner addresses, which is required to deploy workflows to the onchain registry.
DeveloperDeploy, pause, and delete workflows in the private registry, and manage secrets. Cannot link workflow owner addresses, so cannot deploy to the onchain registry.
ViewerView-only access to CRE, for monitoring workflows in the UI.
NamePermissionDescriptionAdminDeveloperViewer
Workflow: Readcre:workflow:readView workflows.✓✓✓
Workflow artifact: Readcre:workflow:artifact:readDownload workflow artifacts.✓✓✓
Workflow artifact: Writecre:workflow:artifact:writeUpload workflow artifacts, which is required to deploy a workflow.✓✓
Workflow: Write (Private registry)cre:workflow:write/private_registryDeploy, pause, activate, and delete workflows in the private registry.✓✓
Secret: Readcre:secret:readList secrets.✓✓✓
Secret: Writecre:secret:writeCreate, update, and delete secrets.✓✓
Owner address linking: Write (CRE)platform:owner_address:linking:write/creLink and unlink workflow owner addresses, which is required to deploy workflows to the onchain registry.✓
Limits: Read (CRE)platform:limits:read/creView CRE limits, such as the maximum spend per workflow execution.✓✓✓
Limits: Write (CRE)platform:limits:write/creChange CRE limits that support self-serve changes, such as the maximum spend per workflow execution.✓
Member role: Write (CRE)platform:member_role:write/creChange members' CRE roles.✓

ACE

ACE roles control access to policy engines, policies, targets, identities, evaluations, and active monitoring.

RoleDescription
AdminFull ACE access, including archiving policy engines and registries, granting cross-org access, and changing members' ACE roles.
OperatorCreate and manage policies, targets, identities, evaluations, and active monitoring. Cannot archive policy engines, registries, extractors, or policy types, create wallets, or grant cross-org access.
ViewerView-only access to ACE.

Policy manager

NamePermissionDescriptionAdminOperatorViewer
Policy manager policy engine: Readace:policy_manager:policy_engine:readRead policy engines.✓✓✓
Policy manager policy engine: Writeace:policy_manager:policy_engine:writeCreate and update policy engine.✓✓
Policy manager policy engine archive: Writeace:policy_manager:policy_engine:archive:writeArchive policy engine (affects everything deployed under it).✓
Policy manager policy: Readace:policy_manager:policy:readRead policies and data validator instances.✓✓✓
Policy manager policy: Writeace:policy_manager:policy:writeCreate and update policy and data validator instances.✓✓
Policy manager policy archive: Writeace:policy_manager:policy:archive:writeArchive policy and data validator instances.✓✓
Policy manager target: Readace:policy_manager:target:readRead targets and their protections.✓✓✓
Policy manager target: Writeace:policy_manager:target:writeCreate and update target and its protections.✓✓
Policy manager target archive: Writeace:policy_manager:target:archive:writeArchive target and its protections.✓✓
Policy manager target access: Readace:policy_manager:target_access:readRead a target's cross-org evaluation access grants.✓
Policy manager target access: Writeace:policy_manager:target_access:writeGrant and revoke cross-org evaluation access to a target.✓
Policy manager implementation: Readace:policy_manager:implementation:readRead extractors and policy types.✓✓✓
Policy manager implementation: Writeace:policy_manager:implementation:writeCreate and update extractor or policy type (updates affect every instance built on it).✓✓
Policy manager implementation archive: Writeace:policy_manager:implementation:archive:writeArchive extractor or policy type (affects every instance built on it).✓

Identity manager

NamePermissionDescriptionAdminOperatorViewer
Identity manager registry: Readace:identity_manager:registry:readRead identity and credential registries, and credential types.✓✓✓
Identity manager registry: Writeace:identity_manager:registry:writeCreate and update identity or credential registry, and credential types.✓✓
Identity manager registry archive: Writeace:identity_manager:registry:archive:writeArchive identity or credential registry (affects everything deployed under it).✓
Identity manager registry access: Readace:identity_manager:registry_access:readRead a registry's cross-org access grants.✓
Identity manager registry access: Writeace:identity_manager:registry_access:writeGrant and revoke cross-org read access to a registry.✓
Identity manager identity: Readace:identity_manager:identity:readRead identities and credentials.✓✓✓
Identity manager identity: Writeace:identity_manager:identity:writeCreate and update identity, and assign credentials.✓✓
Identity manager identity archive: Writeace:identity_manager:identity:archive:writeArchive identity and credentials.✓✓

Reporting

NamePermissionDescriptionAdminOperatorViewer
Reporting policy: Readace:reporting:policy:readRead the reporting service's policy view.✓✓✓
Reporting identity: Readace:reporting:identity:readRead the reporting service's identity view.✓✓✓
Reporting target: Readace:reporting:target:readRead the reporting service's target view.✓✓✓
Reporting transaction: Readace:reporting:transaction:readRead the reporting service's transaction view.✓✓✓
Reporting permit: Readace:reporting:permit:readRead the reporting service's permit view.✓✓✓
Reporting registry: Readace:reporting:registry:readRead the reporting service's registry usage view.✓✓✓

Evaluation

NamePermissionDescriptionAdminOperatorViewer
Evaluation permit: Readace:evaluation:permit:readRead evaluation permits.✓✓✓
Evaluation permit: Writeace:evaluation:permit:writeCreate evaluation permit.✓✓

Core

NamePermissionDescriptionAdminOperatorViewer
Core org config: Readace:core:org_config:readRead organization details.✓✓✓
Core network: Readace:core:network:readRead supported networks.✓✓✓
Core wallet: Readace:core:wallet:readRead wallets.✓✓✓
Core wallet: Writeace:core:wallet:writeCreate wallet.✓

Active monitoring

NamePermissionDescriptionAdminOperatorViewer
Active monitoring action variable: Readace:active_monitoring:action_variable:readRead action variables.✓✓✓
Active monitoring contract group: Readace:active_monitoring:contract_group:readRead contract groups.✓✓✓
Active monitoring contract group: Writeace:active_monitoring:contract_group:writeCreate contract groups.✓✓
Active monitoring rule group: Readace:active_monitoring:rule_group:readRead rule groups.✓✓✓
Active monitoring rule group: Writeace:active_monitoring:rule_group:writeCreate and update rule groups.✓✓
Active monitoring monitored address: Readace:active_monitoring:monitored_address:readRead monitored addresses.✓✓✓
Active monitoring monitored address: Writeace:active_monitoring:monitored_address:writeAdd addresses to the screening watch list.✓✓
Active monitoring screening interval: Readace:active_monitoring:screening_interval:readRead the screening interval.✓✓✓
Active monitoring screening interval: Writeace:active_monitoring:screening_interval:writeSet, remove, start and stop the screening interval.✓✓
Active monitoring decision log: Readace:active_monitoring:decision_log:readRead decision logs.✓✓✓
Active monitoring decision log: Writeace:active_monitoring:decision_log:writeDismiss and enforce decision logs.✓✓
Active monitoring provider API key: Readace:active_monitoring:provider_api_key:readRead screening-provider API key metadata.✓✓✓
Active monitoring provider API key: Writeace:active_monitoring:provider_api_key:writeSet and remove screening-provider API keys.✓✓

Administration

NamePermissionDescriptionAdminOperatorViewer
Member role: Write (ACE)platform:member_role:write/aceChange members' ACE roles.✓

CRE Connect

CRE Connect roles control access to operations, wallets, channels, watchers, queries, and events.

RoleDescription
AdminFull CRE Connect access, including archiving wallets, channels, and watchers, and changing members' CRE Connect roles.
OperatorCreate and manage operations, wallets, channels, watchers, and queries. Cannot archive resources.
ViewerView-only access to CRE Connect.

Core

NamePermissionDescriptionAdminOperatorViewer
Network: Readcrec:network:readRead available blockchain networks.✓✓✓
Wallet: Readcrec:wallet:readRead wallets.✓✓✓
Wallet: Writecrec:wallet:writeCreate or update wallet.✓✓
Wallet archive: Writecrec:wallet:archive:writeArchive wallet.✓

Operations

NamePermissionDescriptionAdminOperatorViewer
Operation: Readcrec:operation:readRead operations and search by initiator/signer/canceller.✓✓✓
Operation: Writecrec:operation:writeCreate operation (draft or pre-signed).✓✓
Operation signature: Writecrec:operation:signature:writeSign (finalize) or cancel operation.✓✓

Channels

NamePermissionDescriptionAdminOperatorViewer
Channel: Readcrec:channel:readRead channels.✓✓✓
Channel: Writecrec:channel:writeCreate or update channel.✓✓
Channel archive: Writecrec:channel:archive:writeArchive channel.✓

Watchers

NamePermissionDescriptionAdminOperatorViewer
Watcher: Readcrec:watcher:readRead watchers.✓✓✓
Watcher: Writecrec:watcher:writeCreate or update watcher.✓✓
Watcher archive: Writecrec:watcher:archive:writeArchive watcher.✓

Queries

NamePermissionDescriptionAdminOperatorViewer
Query: Readcrec:query:readRead queries.✓✓✓
Query: Writecrec:query:writeCreate query.✓✓

Events

NamePermissionDescriptionAdminOperatorViewer
Event: Readcrec:event:readRead events, run history, and search events.✓✓✓

Administration

NamePermissionDescriptionAdminOperatorViewer
Member role: Write (CRE Connect)platform:member_role:write/crecChange members' CRE Connect roles.✓

Data Streams

Data Streams has a single role.

RoleDescription
AdminAccess to your organization's Data Streams subscription, and the ability to assign other members as Data Streams Admins. Each member gets their own API credentials while sharing access to the organization's Data Streams.
NamePermissionDescriptionAdmin
Member role: Write (Data Streams)platform:member_role:write/datastreamsChange members' Data Streams roles.✓

Managing member roles

Members with the appropriate permissions can assign and change roles for other members:

  • Platform Admins can manage member roles for all products.
  • Product Admins (for example, CRE Admins) can manage member roles for their product.
  • The Owner can manage member roles for all products.

To assign or change a member's roles, see Assigning and Modifying Roles.

What's next?

Get the latest Chainlink content straight to your inbox.