Refine login API to get rid of cookies and automatic guests
Assessment
This issue has not been assessed yet.
Description
Worked out the following plan with Dave:
Backend Phase 1 (backward compatible):
- Add new explicit /create-guest endpoint which returns JSON; checkloginfilter will skip this path
- /login will conditionally return redirect response OR JSON if Accept header has json
Client worK:
- On new page load, look for bearer token on local storage; if not present, call /create-guest and save token
- New client route: /app/complete-login?auth-code=123&others
- Will be specified in /oauth/authorize?redirectUri=/app/complete-login&state=blah
- Will call /login with oauth query parameters, JSON Accept header, and existing guest token in Authorize header, then save token and redirect to URL
- Any service returning 401 when token sent = remove local storage token and reload the page
Backend Phase 2 (breaking changes):
- Checkloginfilter no longer returns guests; always 401s like services
- Add more routes or new mechanism to let services declare whether they need a user (will let client call e.g. /, /ontology, /record-types before /create-guest returns
- Dominant language
- Java
- Stars
- 1
- Forks
- 4
- Avg merge
- 1m
- Merged PRs (30d)
- 1
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from VEuPathDB/WDK
-
Difficulty 3/5 1-2 days Newbie friendliness 62/100
-
Difficulty 4/5 3-5 days Newbie friendliness 38/100
-
Difficulty 4/5 3-5 days Newbie friendliness 35/100
-
enhancement
Difficulty 3/5 1-2 days Newbie friendliness 42/100
-
Difficulty 5/5 Over a week Newbie friendliness 25/100
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
bug needs triage
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
Difficulty 1/5 Under an hour Newbie friendliness 94/100
objectionary/hone-maven-plugin#1061 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
spring-projects/spring-modulith#1895 ·