s6.thecompany-lab.com) sits in front of it and calls the
scoped internal endpoints below to perform an authoritative, no-session
credential check before opening password-remediation state — it never
sees this origin's verifier or history material.
Direct hostname: s6-origin.thecompany-lab.com
Capability hostname: s6.thecompany-lab.com
| Method | Path | Scope | Purpose |
|---|---|---|---|
| GET | / | public | This page |
| POST | /login | public | Normal browser + API login. Success establishes a session (browser: session cookie + 302; API: success JSON). Failure returns a single generic error (no user enumeration). |
| POST | /internal/auth/verify-password |
service-secret |
V1 authoritative no-session credential check. Returns only
{ valid: true|false }. Never sets a cookie, issues a
token, or redirects.
|
| POST | /internal/auth/reset-password |
service-secret |
Idempotent admin reset (Option A). Rejects recent-password reuse via
the origin's own password history. Returns { ok }.
|
The two /internal/* endpoints require the shared service
secret in the x-rs-service-secret request header,
supplied only by bindings / local environment (see
.dev.vars.example). Requests without it are rejected with
403 before any account work.