Cloud-native IAM with OIDC, OAuth2, MFA, passkeys, brute-force protection, and SSO. The identity backbone for every product in the Koder ecosystem.
# OIDC Discovery GET /.well-known/openid-configuration # Authorization Code + PKCE GET /oauth/v2/authorize ?response_type=code &client_id=my-app &code_challenge=S256 &redirect_uri=https://app.example.com/cb # Token exchange POST /oauth/v2/token client_id=my-app code=auth_code_here code_verifier=pkce_verifier # Userinfo GET /oidc/v1/userinfo Authorization: Bearer <access_token> # JWKS (public keys for JWT validation) GET /oauth/v2/keys
Every identity and access management feature your platform needs, built from scratch in Go.
Full OpenID Connect and OAuth 2.0 with Authorization Code + PKCE, Client Credentials, and Refresh Token flows. RS256 JWT access tokens with JWKS endpoint.
TOTP, WebAuthn/FIDO2 passkeys (hardware-backed, passwordless), and email/SMS OTP. Pluggable MFA stack per user or org policy.
One login for the entire Koder ecosystem. OIDC SSO across all products — users sign in once and access everything.
Tenant resolution by subdomain, custom domain, or header. Tenant-isolated user pools, policies, and configurations.
Argon2id password hashing, brute-force protection, rate limiting, CORS, password strength policies, and client secret hashing.
Hybrid sessions: JWT access tokens (15min) + stateful refresh tokens (30 days). Token rotation, reuse detection, and active session listing.
Full CRUD API for users, groups, and roles. Admin console, self-service profile and password, and email verification.
Clean RESTful API, introspection, revocation, dynamic client registration, and admin bootstrap endpoints.
Prometheus metrics, structured JSON logs via zerolog, health check endpoint, and distributed tracing.
Standard OIDC and OAuth 2.0 endpoints — compatible with any library or framework.
All endpoints follow OIDC Core 1.0, OAuth 2.0 RFC 6749/7636, and related standards. Compatible with any OIDC library.
/.well-known/openid-configuration# Standard OIDC endpoints Discovery GET /.well-known/openid-configuration Auth GET /oauth/v2/authorize Token POST /oauth/v2/token JWKS GET /oauth/v2/keys Introspect POST /oauth/v2/introspect Revoke POST /oauth/v2/revoke UserInfo GET /oidc/v1/userinfo End Session GET /oidc/v1/end_session Reg POST /oauth/v2/register # REST API Users POST/GET /v1/users User GET/PATCH/DEL /v1/users/{id} Auth Flows POST /v1/auth/flows Sessions GET/DEL /v1/sessions Tenants POST/GET /v1/admin/tenants API Keys POST/GET /v1/admin/api-keys
Every security best practice implemented and enforced by default. No configuration required to be secure.
# Create a new user POST /v1/users Authorization: Bearer <admin-token> { "username": "alice", "email": "alice@koder.dev", "password": "<strong-password>" } # Start an auth flow POST /v1/auth/flows { "username": "alice" } # Complete with password POST /v1/auth/flows/{id}/password { "password": "<password>" } # Complete with TOTP POST /v1/auth/flows/{id}/totp { "code": "123456" }
Five microservices + API Gateway. Each service has its own gRPC and HTTP interface.
Native, fast, and built for the Koder Stack — not a third-party integration.
| Feature | Koder ID | Auth0 | Keycloak | Okta |
|---|---|---|---|---|
| OIDC / OAuth2 | ✓ | ✓ | ✓ | ✓ |
| PKCE (mandatory for public) | ✓ | ✓ | ✓ | ✓ |
| WebAuthn / Passkeys | ✓ | ✓ | ✓ | ✓ |
| Koder ecosystem SSO | ✓ | — | — | — |
| Multi-tenant native | ✓ | Enterprise | ✓ | Enterprise |
| Microservice architecture | ✓ | — | — | — |
| No per-MAU pricing | ✓ | — | ✓ | — |
| KDB storage backend | ✓ | — | — | — |
Sign in once. Access everything in the Koder ecosystem.