Skip to content

Security

The Alation Agent Skills plugin is a local CLI tool. It runs on the user’s machine, sends requests to the organization’s Alation instance, and returns the response. It has no server component, stores no data, and runs no AI models of its own.

This page covers how authentication works, what data the plugin accesses, which external endpoints it contacts, and how it enforces Alation’s role-based access controls.

For an overview of Alation Cloud Service security controls, encryption, and key management, see the Alation Cloud Service Security page.

The plugin is open-source under Apache 2.0. The full source code is available at Alation/alation-plugins and can be independently audited. It collects no telemetry, usage analytics, or diagnostic data — verifiable by reading the source.

Plugin component architecture

The plugin runs locally with no server-side component. All catalog search, data browsing, and query execution happen inside the customer’s Alation environment. Query results flow back to the plugin and appear in the user’s AI session; they pass through the workstation but are never persisted by the plugin.

The plugin returns two categories of information:

CategoryExamplesPersisted by plugin?
Catalog metadataTable names, column names, schema descriptions, tagsNo
Query resultsRows returned by SQL run against a data productNo

The ask skill can chat with AI agents created in Alation Agent Studio via python -m cli chat send, and invoke individual tools via python -m cli tool call. Both commands hit Alation’s /ai/api/v1/chats/ endpoints. The plugin never contacts an LLM directly; Alation handles the LLM call internally on the user’s behalf.

By default, agents run on Alation’s infrastructure and use AWS Bedrock as the LLM provider. Admins can also connect their own LLM credentials through Bring Your Own Model (BYOM), which supports AWS Bedrock, Azure OpenAI, OpenAI, Anthropic, Google Vertex AI, and OpenAI-compatible providers.

Alation may send catalog metadata to the LLM as context, depending on the agent’s configuration and the user’s query. Metadata that may be sent includes:

  • Object names (table name, column names and types)
  • Descriptions, titles, and tags
  • Linked query SQL text
  • Lineage information
  • Search results

The plugin uses OAuth 2.0 with PKCE. The full login flow is shown below.

OAuth 2.0 + PKCE login flow

Admins can adjust these in Alation admin settings.

TokenDefaultConfigurable range
Access token24 hours1 hour to 3 days
Refresh token60 days3 days to 180 days

Alation supports integration with external identity providers. When IdP federation is configured, Alation validates incoming JWT tokens against the IdP’s JWKS endpoint instead of managing credentials locally. Users authenticate through their existing corporate SSO without a separate Alation credential.

ProviderSupport level
Microsoft Entra IDCertified
OktaCertified
Auth0Supported
Other JWT-based IdPsBest effort

See User-Initiated OAuth Clients for setup instructions.

Request authorization flow

The plugin does not bypass Alation’s access controls. Every request carries the user’s identity token, and Alation enforces the same permissions that apply when the user logs into the Alation web interface. See Roles and Permissions for the full role hierarchy.

ControlBehavior
Catalog visibilityUsers only see data sources, schemas, and tables they have been granted access to in Alation
Data product accessUsers can only query data products that are published and accessible to their role
Agent and tool accessDraft agents are visible only to their creator and admin-tier roles; published agents are visible to all authenticated users
Query executionSQL runs using Alation-managed database credentials; users never see or control the underlying connection
RoleAccess via the plugin
Server Admin / Catalog AdminAll published and draft resources
Composer, Steward, Source AdminTheir own drafts and all published resources
Viewer, ExplorerPublished resources only
PropertyDetail
TransportHTTPS (TLS) for all communication
AuthenticationOAuth 2.0 with PKCE
IdP federationMicrosoft Entra ID, Okta, Auth0 supported
Token lifetimesAccess: 24h default (1h to 3d); Refresh: 60d default (3d to 180d)
Token storage~/.alation/token_cache.json, chmod 0600
Token revocationSuspending a user in Alation prevents new logins; existing tokens expire per their configured lifetime
AuthorizationAlation enforces RBAC on every request
Data sent to Alation’s LLMCatalog metadata only; actual data values never sent by Alation to the LLM
Query results and AI assistantQuery results pass into the AI assistant’s context window; controls at the AI assistant layer apply
NetworkOutbound HTTPS to Alation hostname only; HTTPS_PROXY supported for corporate proxies
TelemetryNone
Source codeOpen-source, Apache 2.0
ComplianceSee Alation Cloud Service Security; SOC 2 Type II available under NDA via account manager