A developer-focused breakdown of CoreOps Auth's architecture, subsystems and capabilities — a reference for engineers evaluating, extending or deploying the platform.
A type-safe Next.js 16 application with a clean public/protected split, server-side rendering and a separate REST API layer.
Many organisations, each with its own tenants — isolated row by row in one database and enforced by PostgreSQL itself on the API.
What a user can open is decided by their membership's primary role and where it sits — never by policies an administrator could mis-edit.
Encrypted cookie sessions backed by server-side session records, hashed credentials and TOTP MFA.
Register the applications your organisations use, license them per tenant, and let them ask who may use them.
Roles, policies, resources and validator rules decide what each API request may do — and every decision is recorded.
Invitation-based accounts, managed per organisation and tenant, with a full history of every sign-in.
Three authenticated API surfaces — for users, for platform administration and for licensed applications.
One place to run every organisation — scoped automatically to what each administrator may manage.
Six non-blocking logs, each entry tagged with the organisation and tenant it belongs to.
Per-IP throttling and persistent account lockout on every sensitive endpoint, tunable without code changes.
Runtime-configurable SMTP with built-in templates and fully logged, non-blocking delivery.
Everyday features every user and administrator relies on.
A Prometheus-compatible metrics endpoint with runtime and request instrumentation, ready for any OpenMetrics stack.
PostgreSQL 15+ with a schema created automatically on first start, Row-Level Security and one-click backup and restore.
Database-backed settings that take effect immediately — no restart, no redeploy.
Hardened headers and careful data handling, applied everywhere by default.
A small, non-root Docker image behind a TLS-terminating reverse proxy.
# Prometheus-compatible, Bearer-token protected
curl -H "Authorization: Bearer $TOKEN" https://your-host/api/metrics
# HELP api_request_duration_ms request latency
# TYPE api_request_duration_ms histogram
api_requests_total{method="GET",route="/api/users",status="200"} 1284
nodejs_eventloop_lag_seconds 0.0021