Pular para o conteúdo principal

Authorization

Console uses an IAM-style (AWS IAM-inspired) permission system with Groups, Policies, and fine-grained Actions.

How It Works

User → Groups → Policies → Actions on Resources

Users do not have permissions directly. They belong to one or more Groups. Each group has one or more Policies attached (or inline). Policies define which actions are allowed or denied on which resources.

Action Format

Actions follow the format service:action:

users:list          # List users
users:invite # Invite a new user
connections:sync # Sync database metadata
visualizations:execute # Run a visualization query
data_api:execute # Consume a data API endpoint

Wildcards are supported:

PatternMeaning
users:*All actions in the users service
*:listThe list action in every service
*Full access (all services, all actions)

Policy Document

A policy contains one or more statements, each with an effect (Allow or Deny), a list of actions, and a list of resources (ARN patterns or *).

{
"version": "2025-01-01",
"statements": [
{
"sid": "AllowReadUsers",
"effect": "Allow",
"actions": ["users:list", "users:get"],
"resources": ["*"]
},
{
"sid": "DenyDeleteUsers",
"effect": "Deny",
"actions": ["users:delete"],
"resources": ["*"]
}
]
}

Evaluation Logic

Permissions are evaluated in this order:

  1. Owner bypass — users marked as owner have full access, bypassing all checks
  2. Explicit Deny — any matching Deny statement blocks access (Deny always wins)
  3. Explicit Allow — any matching Allow statement grants access
  4. Default — implicit deny (no match = access denied)

Available Services

ServiceActions
userslist, get, invite, update, delete, activate, deactivate, list_integration_users, create_integration_user, delete_integration_user, assign_groups, remove_groups
groupslist, get, create, update, delete, attach_policy, detach_policy
policieslist, get, create, update, delete
companyget, update
api_keyslist, list_own, get, create, create_own, revoke, revoke_own
connectionslist, get, create, update, delete, test, sync
vpn_profileslist, get, create, update, delete
visualizationslist, get, create, update, delete, execute, publish, share, schedule
dashboardslist, get, create, update, delete, publish, share, schedule
analysis-folderslist, get, create, update, delete
managed-tableslist, get, create, update, delete, upload, data-read, data-write
viz_api_endpointslist, read, create, update, delete
data_apiexecute, get_job
conceptslist, get, create, update, delete
knowledge_reviewslist, review, generate, manage_jobs
semanticlist, create, update, delete
ontologylist, create, update, delete
share_tagslist, read, create, update, delete
audit-logslist
metadataread

The full list of available actions can be fetched at runtime:

GET /api/v1/policies/actions

Pre-defined Managed Policies

Console provides ready-to-use managed policies:

PolicyDescription
FullAdminFull access to everything
ReadOnlyRead-only access across all services
UserManagerManage users (invite, activate, assign groups)
GroupManagerManage groups and list policies
ApiKeyManagerManage integration users and API keys
ConnectionManagerManage connections, VPN profiles, and managed tables
VisualizationViewerView and execute dashboards and visualizations
VisualizationManagerFull management of visualizations, dashboards, and analysis folders
AnalyticsAuthorCreate and publish visualizations, dashboards, and API endpoints
KnowledgeManagerManage domain knowledge (concepts, semantic, ontology)
DataEngineerManage connections, managed tables, and metadata
PolicyManagerManage policies
CompanyAdminManage company settings
DataAPIConsumerExecute data API endpoints and poll async job results

Checking Permissions

Use the permissions endpoint to retrieve the list of actions the current user is allowed to perform:

GET /api/v1/auth/permissions
Authorization: Bearer YOUR_TOKEN

Response:

{
"actions": ["users:list", "users:get", "visualizations:*"],
"is_owner": false
}
For Product Users

Managing permissions through the UI? See Policies Reference for API details.