aboutsummaryrefslogtreecommitdiffstats
path: root/src/api/auth.rs
Commit message (Collapse)AuthorAgeFilesLines
* auth: no password prompt over the dashboard's own requeststv3 days1-3/+8
| | | | | | | | | | | | | Opening a dashboard through its login page showed a 401 on /auth/login and the browser's password prompt. The page asked for its token by the browser's password first (POST /auth/login), with none to send, and the 401 carried a Basic challenge, which a browser answers with its prompt. The page now asks by its session first (POST /auth/session), then by the browser's password or the proxy's. And a 401 to a page's own requests (Sec-Fetch-Dest: empty: fetch, EventSource) carries no challenge: a page has its login of its own. Navigations and clients without the header (curl) are still challenged.
* auth: a login page and browser sessionstv4 days1-0/+15
| | | | | | | | | GET /login without authentication: log in by password or with a token (from a login by key). POST/DELETE /auth/session keep the token as an HttpOnly, SameSite=Strict cookie; the dashboard sends a browser without a user there and renews the session while open. Auth plan M2/M3 (browsers).
* auth: logging in, and tokens as bearerstv4 days1-4/+17
| | | | | | | | | POST /auth/login (by htpasswd or the proxy), /auth/refresh, /auth/logout, GET /auth/whoami; every request may bring Authorization: Bearer instead of a password. --token-lifetime and --session-lifetime. Auth plan M2.
* access: first users at genesistv4 days1-0/+7
| | | | | | | | --bootstrap-users gives a new swarm a registry from its first change, each first user with everything; other users may do nothing until added. Without it the swarm has no registry and works as before. Auth plan M1.
* api: allow listening to Unix socketstv9 days1-10/+37
|
* api: allow auth delegationtv9 days1-17/+156
|
* turn all pub into pub(crate)tv2026-10-261-3/+3
|
* detect broken htpasswd files during startuptv2026-10-261-11/+22
|
* only protocol-writers may modify _continuumtv2026-10-241-10/+15
|
* reorganize all the modulestv2026-10-211-0/+141