Open
Description
Status: See OAuth outline below.
OAuth is the default method of authentication in atproto.
The task at hand is neatly described by the parallel effort in millipds:
Docs: https://atproto.com/specs/oauth
Initial proposal: https://github.com/bluesky-social/proposals/tree/main/0004-oauth
Client implementations (useful for reference):
https://github.com/mary-ext/atcute/tree/trunk/packages/oauth/browser-client
https://github.com/bluesky-social/atproto/tree/main/packages/oauth
Incomplete list of specific things we need to implement:
- DPoP (involves tracking jti reuse - needs DB)
- PAR (involves associating auth requests with UUIDs, with some TTL - could plausibly stay in-memory)
- PKCE
- An actual login webui, allowing the user to grant the requested scopes. (likely involves associating session state with a cookie - needs DB)
Prior art:
Metadata
Metadata
Assignees
Labels
No labels