Platform Access Control

9 min read

Archestra uses a role-based access control (RBAC) system to manage user permissions within organizations. This system provides both predefined roles for common use cases and the flexibility to create custom roles with specific permission combinations.

Permissions in Archestra are defined using a resource:action format, where:

  • Resource: The type of object or feature being accessed (e.g., profile, tool, organization)
  • Action: The operation being performed (create, read, update, delete, admin)

For example, the permission profile:create allows creating new profiles, while organization:read allows viewing organization information.

Predefined Roles

The following roles are built into Archestra and cannot be modified or deleted:

RoleDescriptionGranted Permissions
adminFull administrative access to all organization resourcesorganization:read

organization:update

organization:delete

member:create

member:update

member:delete

invitation:create

invitation:cancel

team:create

team:read

team:update

team:delete

ac:create

ac:read

ac:update

ac:delete

profile:create

profile:read

profile:update

profile:delete

profile:admin

tool:create

tool:read

tool:update

tool:delete

policy:create

policy:read

policy:update

policy:delete

dualLlmConfig:create

dualLlmConfig:read

dualLlmConfig:update

dualLlmConfig:delete

dualLlmResult:create

dualLlmResult:read

dualLlmResult:update

dualLlmResult:delete

interaction:create

interaction:read

interaction:update

interaction:delete

ssoProvider:create

ssoProvider:read

ssoProvider:update

ssoProvider:delete

internalMcpCatalog:create

internalMcpCatalog:read

internalMcpCatalog:update

internalMcpCatalog:delete

mcpServer:create

mcpServer:read

mcpServer:update

mcpServer:delete

mcpServer:admin

mcpServerInstallationRequest:create

mcpServerInstallationRequest:read

mcpServerInstallationRequest:update

mcpServerInstallationRequest:delete

mcpServerInstallationRequest:admin

mcpToolCall:read

conversation:create

conversation:read

conversation:update

conversation:delete

limit:create

limit:read

limit:update

limit:delete

tokenPrice:create

tokenPrice:read

tokenPrice:update

tokenPrice:delete

chatSettings:read

chatSettings:update

prompt:create

prompt:read

prompt:update

prompt:delete
memberStandard user with limited access to organization resourcesprofile:read

tool:create

tool:read

tool:update

tool:delete

policy:create

policy:read

policy:update

policy:delete

interaction:create

interaction:read

interaction:update

interaction:delete

dualLlmConfig:read

dualLlmResult:read

internalMcpCatalog:read

mcpServer:create

mcpServer:read

mcpServer:delete

mcpServerInstallationRequest:create

mcpServerInstallationRequest:read

mcpServerInstallationRequest:update

organization:read

team:read

mcpToolCall:read

conversation:create

conversation:read

conversation:update

conversation:delete

limit:read

tokenPrice:read

chatSettings:read

prompt:read

Custom Roles

Organization administrators can create custom roles by selecting specific permission combinations. Custom roles allow fine-grained access control tailored to your organization's needs.

Permission Requirements

  • Role Creation: Only users with organization:update permission can create custom roles
  • Permission Granting: You can only grant permissions that you already possess
  • Role Limits: Up to 50 custom roles per organization

Available Permissions

The following table lists all available permissions that can be assigned to custom roles:

PermissionDescription
ac:createCreate new RBAC roles
ac:readView and list RBAC roles
ac:updateModify existing RBAC roles
ac:deleteRemove existing RBAC roles
chatSettings:readView and list chat feature configuration and settings
chatSettings:updateModify existing chat feature configuration and settings
conversation:createCreate new chat conversations with automation experts
conversation:readView and list chat conversations with automation experts
conversation:updateModify existing chat conversations with automation experts
conversation:deleteRemove existing chat conversations with automation experts
dualLlmConfig:createCreate new dual llm security configuration settings
dualLlmConfig:readView and list dual llm security configuration settings
dualLlmConfig:updateModify existing dual llm security configuration settings
dualLlmConfig:deleteRemove existing dual llm security configuration settings
dualLlmResult:createCreate new results from dual llm security validation
dualLlmResult:readView and list results from dual llm security validation
dualLlmResult:updateModify existing results from dual llm security validation
dualLlmResult:deleteRemove existing results from dual llm security validation
interaction:createCreate new conversation history and profile interactions
interaction:readView and list conversation history and profile interactions
interaction:updateModify existing conversation history and profile interactions
interaction:deleteRemove existing conversation history and profile interactions
internalMcpCatalog:createCreate new internal mcp server catalog management
internalMcpCatalog:readView and list internal mcp server catalog management
internalMcpCatalog:updateModify existing internal mcp server catalog management
internalMcpCatalog:deleteRemove existing internal mcp server catalog management
invitation:createCreate new member invitations and onboarding
invitation:cancelCancel member invitations and onboarding
limit:createCreate new usage limits and quotas
limit:readView and list usage limits and quotas
limit:updateModify existing usage limits and quotas
limit:deleteRemove existing usage limits and quotas
mcpServer:createCreate new mcp servers for tool integration
mcpServer:readView and list mcp servers for tool integration
mcpServer:updateModify existing mcp servers for tool integration
mcpServer:deleteRemove existing mcp servers for tool integration
mcpServer:adminAdministrative control over mcp servers for tool integration
mcpServerInstallationRequest:createCreate new requests for new mcp server installations
mcpServerInstallationRequest:readView and list requests for new mcp server installations
mcpServerInstallationRequest:updateModify existing requests for new mcp server installations
mcpServerInstallationRequest:deleteRemove existing requests for new mcp server installations
mcpServerInstallationRequest:adminAdministrative control over requests for new mcp server installations
mcpToolCall:readView and list tool execution logs and results
member:createCreate new organization members and their roles
member:updateModify existing organization members and their roles
member:deleteRemove existing organization members and their roles
organization:readView and list organization settings
organization:updateModify existing organization settings
organization:deleteRemove existing organization settings
policy:createCreate new tool invocation and trusted data policies for security
policy:readView and list tool invocation and trusted data policies for security
policy:updateModify existing tool invocation and trusted data policies for security
policy:deleteRemove existing tool invocation and trusted data policies for security
profile:createCreate new profiles that can use tools and interact with users
profile:readView and list profiles that can use tools and interact with users
profile:updateModify existing profiles that can use tools and interact with users
profile:deleteRemove existing profiles that can use tools and interact with users
profile:adminAdministrative control over profiles that can use tools and interact with users
prompt:createCreate new reusable prompt templates and system prompts
prompt:readView and list reusable prompt templates and system prompts
prompt:updateModify existing reusable prompt templates and system prompts
prompt:deleteRemove existing reusable prompt templates and system prompts
ssoProvider:createCreate new sso providers for authentication
ssoProvider:readView and list sso providers for authentication
ssoProvider:updateModify existing sso providers for authentication
ssoProvider:deleteRemove existing sso providers for authentication
team:createCreate new teams for organizing members and access control
team:readView and list teams for organizing members and access control
team:updateModify existing teams for organizing members and access control
team:deleteRemove existing teams for organizing members and access control
tokenPrice:createCreate new token pricing configuration
tokenPrice:readView and list token pricing configuration
tokenPrice:updateModify existing token pricing configuration
tokenPrice:deleteRemove existing token pricing configuration
tool:createCreate new individual tools that can be assigned to profiles
tool:readView and list individual tools that can be assigned to profiles
tool:updateModify existing individual tools that can be assigned to profiles
tool:deleteRemove existing individual tools that can be assigned to profiles

Best Practices

Principle of Least Privilege

Grant users only the minimum permissions necessary for their role. Start with the member role and add specific permissions as needed.

Team-Based Organization

Combine roles with team-based access control for fine-grained resource access:

  1. Create teams for different groups (e.g., "Data Scientists", "Developers")
  2. Assign profiles and MCP servers to specific teams
  3. Add members to teams based on their role and responsibilities

Team Access Control Rules

For Profiles:

  • Team members can only see profiles assigned to teams they belong to
  • Exception: Users with profile:admin permission can see all profiles
  • Exception: Profiles with no team assignment are visible to all organization members

For MCP Servers:

  • Team members can only access MCP servers assigned to teams they belong to
  • Exception: Users with mcpServer:admin permission can access all MCP servers
  • Exception: MCP servers with no team assignment are accessible to all organization members

Associated Artifacts:

Team-based access extends to related resources like interaction logs, policies, and tool assignments. Members can only view these artifacts for profiles and MCP servers they have access to.

Regular Review

Periodically review custom roles and member assignments to ensure they align with current organizational needs and security requirements.

Role Naming

Use clear, descriptive names for custom roles that indicate their purpose (e.g., "Profile-Manager", "Read-Only-Analyst", "Tool-Developer").

Platform Access Control | Archestra Docs | Archestra