Platform features
Everything you need to store, rotate, and access secrets
One portal over four services. Each capability is a real boundary — storage, identity, and key management scale and rotate independently.
Secrets & Stashes
Secrets live in stashes — named, org-scoped containers with role-based access control. Each secret carries its own encryption key, wrapped by the KMS, so compromising one secret never exposes another.
- AES-256-GCM envelope encryption
- Per-secret DEKs wrapped by versioned KEKs
- Blind-index name lookup (names never in URLs or logs)
- Version history with per-rotation audit
- Role-based read/write access per stash
- Optional per-secret expiration with automatic cleanup
Actionsets
Secrets carry a targeting rule tree — each rule's action shapes the value at read
time and handles revocation. Build custom actionsets or use the built-in
pgsql actionset for ephemeral Postgres credentials.
execute— transform values per caller at fetch timerotate— rotate underlying values without changing paramsrevoke— invalidate individual issued values on demand- Targeting rule trees (match → action, first-match-wins)
- Request-param narrowing for scoped access
Auth & Identity
Multiple sign-in methods with a unified session model. Every user gets a personal org, and teams and roles provide fine-grained access control across stashes and secrets.
- Email/password credentials with timing-safe verification
- Google OAuth with one-click linking
- Magic link sign-in (passwordless email)
- Personal org provisioned on signup
- Team and role membership per org
- Programmatic credentials for bots and services
Resolved once, forwarded verbatim
The identity service maps a session to the caller's user, orgs, teams, and roles. Downstream requests carry that context — never re-asserted by the client.
Sessions that stay server-side
Only an argon2id hash of each session key is stored. Tokens travel over the authenticated service channel, never in URLs or browser-facing bodies.
Key Management
The KMS wraps every secret's encryption key under a versioned Key Encryption Key. Root keys are non-exportable by construction — wrapping and unwrapping happen inside the service boundary.
- Versioned KEKs with ordered rotation
- Non-exportable root key (wrapped at rest)
- Admin-gated rotation with audit trail
- Per-secret DEK rotation (re-wrap without re-encrypt)
- Derived keys for HMAC and other purposes
Rotating without downtime
New writes pick up the latest KEK immediately; existing DEKs are re-wrapped in the background, then the old version is retired.
Audit per caller
Every wrap, unwrap, and rotation is attributed to the authenticated caller that requested it.
Programmatic Access
Use the REST API or the upcoming MCP endpoint to integrate Aker into your CI/CD pipelines, infrastructure automation, and AI workflows. Programmatic credentials carry their own session model.
- REST API for all secret and stash operations
- MCP endpoint (planned) for AI-native access
- Programmatic credentials with bot/session distinction
- Per-caller audit trail