tiffany.systems

Laboratory › Developers › Authentication

Authentication

Every endpoint is public and read-only. An authentication system would create a credential store, a breach surface and a privileged code path, guarding nothing.

The rule that will not change

The contract it will honour

Written down now, while nothing depends on it, so it cannot be invented differently later under pressure to ship.

  • Bearer credentials in the Authorization header. Never in a query string, because URLs are logged, cached, shared and put in referrers.
  • Scopes are explicit and least-privilege. Ambiguous or absent scope fails closed.
  • Separate credentials per environment; a credential valid in one is invalid in the other.
  • Authentication grants access, never scientific authority. No credential, tier or payment can change a claim's qualification, replication or publication status.

Why not build it now anyway

An authentication system with nothing behind it is not a head start. It is a credential store to breach, a privileged code path to audit, a session lifecycle to get wrong, and a login page that teaches users this site asks for credentials — which is exactly the habit a scientific archive should not cultivate.

See the deferred ledger for the same reasoning applied across the rest of the architecture.

PreviousChangelog

NextAPI keys