Skip to main content

Authentication

Control access to your DevOps AI Toolkit Engine with OAuth single sign-on or static tokens.

Overview

What it does: Authenticates users before they can access any toolkit tools. Supports two modes that coexist — static token (default) and OAuth for teams that need individual user identity.

Use when: You're deploying the AI Engine and need to understand how authentication works or configure it for your team.

Two Authentication Modes

The AI Engine supports two authentication modes simultaneously. Both can be active at the same time — the server tries OAuth (JWT) first, then falls back to static token.

OAuth (opt-in)Static Token (default)
How it worksBrowser-based login via OIDCShared Bearer token (DOT_AI_AUTH_TOKEN)
IdentityIndividual — each user has their own identityAnonymous — all users share one token
SetupSet dex.enabled: true (requires HTTPS)One environment variable
User managementCreate/list/delete users via CLI or Web UIN/A — single shared token
Best forTeams, enterprise SSO, per-user audit trailLocal dev, CI/CD, quick start

When to Use Which

Use CaseAuth ModeWhy
Teams needing per-user identityOAuthIndividual audit trail
Enterprise SSO (Google, GitHub, LDAP)OAuthConnects to your existing identity provider
MCP clients with OAuth (Claude Code, Codex, Windsurf)OAuthAutomatic browser-based login
Local development / quick startStatic tokenZero setup, works immediately
CI/CD pipelinesStatic tokenNo browser for OAuth flow
REST API automationStatic tokenProgrammatic access without interactive login
MCP clients without OAuth supportStatic tokenOnly option available

OAuth

OAuth requires HTTPS for all external URLs. Enable it by setting dex.enabled: true in your Helm values when HTTPS is configured (via ingress.tls, a gateway HTTPS listener, or an upstream reverse proxy/load balancer). See the Deployment Guide TLS section for configuration details.

dex:
enabled: true

On helm install with Dex enabled, the AI Engine automatically:

  1. Generates a random admin password
  2. Creates an admin@dot-ai.local account
  3. Shows the credentials in the Helm install output

No passwords are stored in chart values or Git. See the Deployment Guide for retrieving the initial credentials.

For MCP client setup with OAuth (which clients support it, how to authenticate), see MCP Client Setup.

The Web UI also supports OAuth login — click "Login with SSO" to authenticate through Dex. Once logged in, admins can manage users (create, list, and delete static Dex accounts) directly from the browser.

To connect your organization's identity provider (Google, GitHub, LDAP, SAML), see Identity Provider Connectors.

Static Token

DOT_AI_AUTH_TOKEN is required in the Kubernetes secret referenced by the Helm chart. All users sharing this token get anonymous identity — there's no individual user tracking.

Option A — via Helm values (chart creates the secret):

secrets:
auth:
token: "your-shared-token"

Option B — create the secret yourself:

kubectl create secret generic dot-ai-secrets \
--from-literal=auth-token="your-shared-token" \
-n dot-ai

Static token works alongside OAuth — you can use both at the same time. See MCP Client Setup for client configuration with either mode.

User Identity

Every authenticated request carries a user identity. The version tool includes identity information in its response:

FieldOAuthStatic Token
userIdUnique ID from identity provideranonymous
emailUser's email
groupsGroups from identity provider
sourceoauthtoken

See Also