Skip to content

docs(understand): add security posture and threat model page - #120

Merged
Bccorb merged 1 commit into
mainfrom
docs/security-posture-page
Oct 20, 2026
Merged

Bccorb merged 1 commit into
mainfrom
docs/security-posture-page

Conversation

@Bccorb

@Bccorb Bccorb commented Oct 20, 2026

Copy link
Copy Markdown
Contributor

Closes #111

Adds src/content/docs/understand/security.mdx (served at /understand/security), a security posture and threat model page written for a reviewer answering a security questionnaire. Every factual claim links to code or configuration in seamless-auth-api at the v0.19.1 tag, and each linked path was checked to exist at that tag.

What the page covers

  • Trust boundaries: the API trusts its server adapter and service token holders; cookies and CSRF belong to seamless-auth-server.
  • Threat model: what it defends against, what it does not, and the accepted risks (lockout discloses existence, pre-auth tokens prove only address possession and are replayable within five minutes, best-effort audit writes, plaintext email and phone, external delivery mode, per-instance limits, the development mode guard override, metadata outage).
  • Authentication factors and account lockout.
  • Session management: opaque refresh tokens, HMAC fingerprints, rotation with a database-serialised claim, reuse detection, absolute and idle lifetime, concurrent session cap, revocation.
  • Cryptography and keys: algorithms per artifact, JWKS signing keys and rotation, secrets that fall back to the service token.
  • Audit logging: hash chain, append-only triggers, integrity check, export, retention, write failures.
  • Availability and scaling: rate limits, per-instance state, production caveats.
  • Vulnerability disclosure, supported versions, and the five published advisories.
  • Supply chain: Trivy scan, SBOM and provenance, cosign keyless signing with the verify command, CodeQL gate, npm audit.

The page states that Seamless Auth holds no certification and that FIDO certification is deferred to v1.0.

Not linked yet

Checks

  • npx prettier --check .: All matched files use Prettier code style!
  • npm run lint: eslint, check-no-h1 and check-sdk-results pass with no output.
  • npm run typecheck: Result (13 files): 0 errors, 0 warnings, 0 hints.
  • npm run build: 52 page(s) built, Complete! (/understand/security/index.html and /understand/security.md generated).
  • npm run check:matrix: fails on main already (13 packages drifted in build/ecosystem.mdx), not touched here.

Covers the threat model, accepted risks, authentication factors, session design,
keys and secrets, audit integrity and retention, per-instance limits, disclosure policy,
published advisories and image verification. Claims link to seamless-auth-api at v0.19.1.
@Bccorb Bccorb added the v0.19 Targets the v0.19 release label Oct 20, 2026
@Bccorb
Bccorb merged commit e6513e0 into main Oct 20, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

v0.19 Targets the v0.19 release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

docs: security posture page and threat model

1 participant