15 KiB
15 KiB
Auth-Yes — Practical Playbook & High-ROI Use Cases
Classification: System Operations & Integration Guide
Purpose: Realistic, practical assessment of day-to-day effort across common
deployment, integration, and administrative scenarios.
Maintained By: Auth-Yes IAM Architecture Team
Date: August 2026
Executive Overview
Auth-Yes is engineered to eliminate the operational friction of legacy IAM systems (e.g. Keycloak, Okta, Auth0) while delivering mathematical zero-trust guarantees. Below is a comprehensive assessment of the 11 core high-ROI operational and integration scenarios.
┌──────────────────────────────────────────────────────────────────────────────────────────────────┐
│ EFFORT & COMPLEXITY MATRIX │
├────┬─────────────────────────────────────────────────┬──────────────────┬────────────────────────┤
│ # │ Scenario / Use Case │ Difficulty Level │ Time / Code Required │
├────┼─────────────────────────────────────────────────┼──────────────────┼────────────────────────┤
│ 1 │ Appliance Setup & Cold Boot │ Low (Zero-Touch) │ 1 Command / < 2 min │
│ 2 │ Tier 1 Ingress Auth (Grafana, Portainer, etc.) │ Minimal │ 3 Traefik Docker labels│
│ 3 │ Tier 2 Custom Web/SSR Apps (ed-droid, Next.js) │ Minimal │ 2 Lines of Code │
│ 4 │ Headless Edge Daemons & IoT (RFC 9421 Sigs) │ Low │ HTTP Signature Headers │
│ 5 │ Internal Workload Mesh (mTLS & SPIFFE FFI) │ Minimal │ Auto-injected SVIDs │
│ 6 │ Live Telemetry & WebSockets (Ghost Cockpit) │ Minimal │ 1 Middleware Guard │
│ 7 │ Lost Device Recovery (2-of-3 SSS / BIP-39) │ Zero Admin Toil │ Self-Service UI │
│ 8 │ Incident Response & Fleet-Wide Revocation │ Low │ 1-Click / < 30µs Mesh │
│ 9 │ Multi-App RBAC & Scope Provisioning │ Low │ Simple Web UI Form │
│ 10 │ Cryptographic Compliance & Audit Verification │ Zero │ Automated Merkle Logs │
│ 11 │ Ephemeral Guest Sandboxes & Open Trial Access │ Minimal │ 1-Click / Zero Passkey │
│ 12 │ Hybrid Cloud Edge & Remote Tunnel Ingress │ Low │ Zero-Touch Tunnel / DoH│
└────┴─────────────────────────────────────────────────┴──────────────────┴────────────────────────┘
Use Case 1: Setting Up the Auth System from Scratch
- Difficulty Level: Low (Near Zero-Touch / < 2 Minutes)
- What you actually have to do:
- Run
deno task setup(generatesinfra/stack.envwith cryptographically secure random secrets). - Run
docker compose -f infra/compose.yml up -d. - Navigate to
https://auth.atyg.org/registerin your browser and register your first WebAuthn passkey (touch your YubiKey / Touch ID).
- Run
- Why it's painless:
- The database schema (
users,apps,grants,passkeys,audit_ledger) auto-migrates idempotently on first boot. - The first registered user automatically becomes the Global Admin
(
isGlobalAdmin). You never have to manually run SQL scripts to bootstrap admin access.
- The database schema (
Use Case 2: Adding Auth to Tier 1 Off-the-Shelf Apps (Grafana, Portainer, PGAdmin, etc.)
- Difficulty Level: Minimal (Zero Code / 3 Docker Labels)
- What you actually have to do:
- Add the Traefik ForwardAuth middleware label to your container's
compose.yml:services: grafana: image: grafana/grafana:latest labels: - "traefik.enable=true" - "traefik.http.routers.grafana.rule=Host(`grafana.atyg.org`)" - "traefik.http.routers.grafana.middlewares=authyes-forwardauth@docker"
- Add the Traefik ForwardAuth middleware label to your container's
- Why it's painless:
- Dual-Response Protocol: If a human opens a protected app in a browser
(
Accept: text/html), Auth-Yes immediately issues a302 Redirecttohttps://auth.atyg.org/login?redirect=.... Upon touching their passkey, the user is automatically bounced back to the exact URL/tab they originally requested. - Headless & API Transparency: Background scripts, daemons, and cURL calls
receive clean
401 Unauthorizedresponses without getting stuck in HTML redirect loops. - Open Redirect Protection (CWE-601): The return URL is strictly validated
against approved domains (
*.atyg.organd localhost) to eliminate phishing attack vectors. - Auth-Yes validates the wildcard session cookie and injects
X-Forwarded-User: alicedownstream so Grafana or Portainer automatically logs the user into their profile.
- Dual-Response Protocol: If a human opens a protected app in a browser
(
Use Case 3: Adding Auth to Tier 2 Custom Web/SSR Apps (ed-droid, Hono, Next.js, Remix)
- Difficulty Level: Minimal (2 Lines of Code)
- What you actually have to do:
- Option A (Instant Ingress Hydration on first SSR byte):
// Read the injected grant vector directly from the initial request: const userId = req.headers["x-forwarded-user-id"]; const scopes = req.headers["x-forwarded-scopes"]?.split(",") || []; - Option B (In-App SDK Route Guard with sub-30µs memory cache):
import { authMiddleware, requireScope } from "@auth-yes/sdk/hono"; app.use("/admin/*", authMiddleware(authSdk), requireScope("admin"));
- Option A (Instant Ingress Hydration on first SSR byte):
- Why it's painless:
- ForwardAuth injects pre-evaluated user identity and RBAC grants at the edge for instant SSR UI hydration.
- In-app SDK verification leverages Valkey 8 RESP3 client tracking, validating
tokens in local RAM in
<30\mu swithout database round-trips.
Use Case 4: Headless Edge Daemons & IoT Device Authentication
- Difficulty Level: Low (RFC 9421 HTTP Message Signatures)
- What you actually have to do:
- Register the edge node's Ed25519 public key once via the admin API:
curl -X POST https://auth.atyg.org/api/admin/hwk \ -H "Cookie: session_id=..." \ -d '{"jwk":{"kty":"OKP","crv":"Ed25519","x":"..."}, "name":"telemetry-drone-01"}' - Edge devices send signed HTTP requests with
Signature-InputandSignatureheaders.
- Register the edge node's Ed25519 public key once via the admin API:
- Why it's painless:
- Eliminates fragile static API tokens and shared secrets.
- Signatures survive proxy TLS termination and are validated in
<5\mu svia ValkeyO(1)fingerprint set checks (SISMEMBER auth:hwk:fingerprints).
Use Case 5: Zero-Touch Internal Microservice mTLS & SPIFFE Mesh
- Difficulty Level: Minimal (Zero Manual Certificate Management)
- What you actually have to do:
- Internal backend daemons query the local SPIRE agent over a UNIX domain
socket via
spire_ffi. - The SDK automatically validates the client's SPIFFE ID (e.g.
spiffe://atyg.org/ed-droid) against the authorized application registry.
- Internal backend daemons query the local SPIRE agent over a UNIX domain
socket via
- Why it's painless:
- Native Rust FFI crate (
spire_ffi) handles short-lived X.509 SVID rotation in the background every 60 minutes. - No manual PKI root management, zero CA expiration panics, and zero hardcoded mTLS secrets.
- Native Rust FFI crate (
Use Case 6: Live Telemetry & WebSockets (The Ghost Cockpit Protocol)
- Difficulty Level: Minimal (1 Middleware Guard in Hono)
- What you actually have to do:
- Wrap your WebSocket endpoint with the session guard in
sdk/hono.ts:app.get( "/ws/telemetry", upgradeWebSocket((c) => { const token = getCookie(c, "session_id"); const guard = createWebSocketGuard(authSdk, token); return { ...guard.handlers, onMessage(event, ws) { // Process telemetry data stream }, }; }), );
- Wrap your WebSocket endpoint with the session guard in
- Why it's painless:
- When a session expires or is revoked, the SDK sends
{ "type": "AUTH_REVOKED", "reason": "SESSION_EXPIRED" }and cleanly closes the socket. - The frontend freezes UI state in memory, triggers an ambient WebAuthn prompt, and seamlessly resumes telemetry without refreshing the page or losing user input.
- When a session expires or is revoked, the SDK sends
Use Case 7: User Device Loss & Zero-Downgrade Self-Recovery
- Difficulty Level: Zero Admin Workload (Cryptographic Self-Service)
- What you actually have to do:
- User Action: The user visits
https://auth.atyg.org/recover, types their 12-word BIP-39 recovery voucher, enters their recovery PIN, and touches their new replacement YubiKey or phone. - Admin Action: None.
- User Action: The user visits
- Why it's painless:
- Uses the 2-of-3 Shamir's Secret Sharing (SSS) Matrix:
- Share 1 (Device Share): Stored in browser IndexedDB, encrypted by WebAuthn PRF.
- Share 2 (Hot Share): Stored in server PostgreSQL, encrypted with
Argon2id (
t=12, m=64\,\text{MiB}). - Share 3 (Cold Voucher): Printed 12-word phrase given to user during onboarding.
- Combining any 2 shares reconstructs the master secret in client memory to enroll a new passkey.
- Eliminates insecure SMS/email reset backdoors and relieves admins of manual account unlock tickets.
- Uses the 2-of-3 Shamir's Secret Sharing (SSS) Matrix:
Use Case 8: Incident Response & Fleet-Wide Session Revocation
- Difficulty Level: Low (1-Click / Sub-30µs Mesh Invalidation)
- What you actually have to do:
- Click "Revoke All Sessions" for a compromised user or token in the Auth-Yes management dashboard.
- Why it's painless:
- Valkey 8 RESP3
BCASTpush tracking broadcasts invalidations across all backend nodes and edge proxies in<30\mu s. - Downstream microservices immediately drop L1 cache entries and sever active WebSocket feeds without polling loops or database queries.
- Valkey 8 RESP3
Use Case 9: Multi-App RBAC & Scope Provisioning
- Difficulty Level: Low (Web UI Management or Invite Codes)
- What you actually have to do:
- Option A (Admin Console): Select User
\rightarrowSelect Application\rightarrowAssign Role (admin,operator,viewer). - Option B (Automated Onboarding Invite): Generate a pre-scoped invite
link:
curl -X POST https://auth.atyg.org/api/admin/invites/create \ -H "Cookie: session_id=..." \ -d '{"appId":"...", "role":"operator", "maxUses":1, "autoActivate":true}'
- Option A (Admin Console): Select User
- Why it's painless:
- New users redeeming the invite link automatically enroll their passkey and are provisioned with the exact role and scopes for that application.
Use Case 10: Cryptographic Compliance & Tamper-Evident Audit Logging
- Difficulty Level: Zero Operational Overhead (Append-Only RFC 6962 Ledgers)
- What you actually have to do:
- Auditors query the cryptographically sealed audit ledger:
curl https://auth.atyg.org/api/admin/audit/verify \ -H "Cookie: session_id=..."
- Auditors query the cryptographically sealed audit ledger:
- Why it's painless:
- Every login, invite redemption, scope grant, and session revocation is hashed into an append-only RFC 6962 Merkle Tree.
- Produces Signed Tree Heads (STHs) and mathematical inclusion proofs. Even an
adversary with direct
rootaccess to the PostgreSQL database cannot alter past audit logs without cryptographic detection.
Use Case 11: Ephemeral Guest Sandboxes & Open Trial Access (Zero-Friction Demo to In-Flight Passkey Upgrade)
- Difficulty Level: Minimal (1-Click Guest Issuance / Zero Passkey Required Upfront)
- What you actually have to do:
- Option A (1-Click Guest Sandbox Access): When a visitor clicks "Try
Demo", issue a scoped ephemeral session:
// In ed-droid or host app: const res = await fetch("https://auth.atyg.org/api/guest/session", { method: "POST", body: JSON.stringify({ appId: "ed-droid", ttlSeconds: 7200 }), }); // Sets wildcard session cookie on .atyg.org with scopes: ["guest", "trial"] - Option B (Route Handler Trial Scoping): Check the injected grant header:
app.get("/workspace", (c) => { const scopes = c.req.header("x-forwarded-scopes")?.split(",") || []; const isGuest = scopes.includes("guest") || scopes.includes("trial"); return c.html(<Workspace isGuest={isGuest} />); }); - Option C (In-Flight Upgrade to Permanent Passkey): When the guest clicks "Save Workspace", trigger ambient WebAuthn passkey registration on the spot without reloading the page or losing active session state.
- Option A (1-Click Guest Sandbox Access): When a visitor clicks "Try
Demo", issue a scoped ephemeral session:
- Why it's painless:
- Eliminates the drop-off barrier of forcing passkey enrollment before users experience your product.
- ForwardAuth transparently sets
X-Forwarded-Scopes: guest,trialdownstream. - Upgrades convert the ephemeral guest ID to a permanent passkey account seamlessly in memory.
Use Case 12: Hybrid Cloud Edge & Remote Tunnel Ingress (Cloudflare Tunnel, Split-Horizon DNS & WAN Resiliency)
- Difficulty Level: Low (Zero-Touch Tunnel Ingress / Transparent Split-Horizon)
- What you actually have to do:
- Map public hostnames in Cloudflare Zero Trust Tunnels (
cloudflared) pointingauth.atyg.organd downstream subdomains (e.g.ed-droid.atyg.org) to internal Traefik (http://192.168.1.10:80orhttps://192.168.1.10:443with "No TLS Verify"). - Local LAN devices resolve directly to
192.168.1.10via local router/DNS, while remote mobile clients resolve via Cloudflare Anycast edge proxies. - Auth-Yes handles ForwardAuth 302 redirects and session cookie scoping transparently across both local LAN and remote WAN ingress vectors.
- Map public hostnames in Cloudflare Zero Trust Tunnels (
- Audit & Architectural Resilience Verification Requirements:
- Cookie Scope Parity: Ensure
Set-Cookiewith wildcard domain.atyg.orgis preserved across reverse proxy tunnels without origin truncation. - Open-Redirect & Deep-Link Preservation: Verify
https://auth.atyg.org/login?redirect=...deep-links survive multi-hop proxies and DoH mobile resolvers. - Negative DNS Caching & Mobile DoH Isolation: Validate system behavior when client mobile OS resolvers transition between Wi-Fi split-horizon DNS and cellular DNS over HTTPS (DoH).
- Latency SLA: Verify ForwardAuth edge lookup latency remains
<50\mu son internal LAN and $<10$ms over Cloudflare Tunnel edge.
- Cookie Scope Parity: Ensure