Enterprise feature. OSS ships the OIDC config/storage plumbing referenced elsewhere on this
page, but the actual SSO login redirect/callback route is nasiko-ee only — see SSO
setup.
Nasiko handles two categories of sensitive material, both encrypted at rest with AES-256-GCM:
Per-agent secrets
Secrets are encrypted before they’re written to the database and decrypted only when injected into a container’s environment at deploy time. Plaintext exists in memory for that deploy call and then inside the running container — nowhere else.
- Stored ciphertext-only. A database dump never exposes raw values.
- Decryption happens once, server-side, immediately before the container starts.
- Rotating a secret and restarting the agent re-injects the new value. Nothing is cached outside the container’s environment.
SECRETS_ENCRYPTION_KEY is a 32-byte base64 value validated at startup — the server refuses to start if it’s missing or malformed. Generate it from a cryptographically secure source, store it in your secrets manager, and rotate it deliberately: rotation invalidates every secret encrypted under the old key, so all agent secrets must be re-entered afterward.
See managing agent secrets for the CLI and API workflow.
Nasiko supports SSO through any OIDC-compliant identity provider (Entra ID, Okta, Auth0, Keycloak, and others). The client secret is encrypted at rest under the same scheme, whether configured via environment variables at deploy time or the admin settings API at runtime.
See SSO setup, including how group claims can place users into roles, teams, and departments automatically.
Where this fits