Skip to content

WebID-OIDC authn (minimum demo features) #353

@nicola

Description

@nicola

MVP demoable feature set

Test implementation of OIDC-based signup and signin has been deployed to: https://databox2.com

See also: PR #330/dz_oidc branch for work in progress.

Remaining items:

Solid-server

  • Convert 401 Unauthorized error page to use the signin/Discovery app.
  • Provider discovery by entering WebId (e.g. https://alice.databox.me/profile/card#me)
  • User signup (creating the OIDC user with password on regular account creation)
  • User signin using WebId & password
  • Sign in by entering account id (e.g. alice) & pw
  • Sign in by entering email & pw
  • Receive ID Token and Access Token at the end of the authenticate() dance.
  • Integrate access token parsing into RS or solid server
  • Integrate OIDC config generation into solid init
  • Implement /signout api endpoint (clears session cookie, sends signout request to OIDC provider)
  • Provider discovery by entering email (WebFinger / WebFist integration)

General/Design

  • Design model/workflow for multi-domain authorization - see solid/solid#99

solid-client (client lib support)

  • Refactor existing WebID-TLS based code into separate pluggable library - see solid-client#91
  • Add support for oidc authentication - see solid.js#92
solid-auth-oidc

Create a separate OIDC authentication lib for solid-client to use. (see solid-auth-oidc)

  • Add OIDC support for the signin() function. see solid-auth-oidc#1
  • Add ability to store OIDC Id Tokens client-side (in local storage etc) and send them along with web client CRUD API requests. see solid-auth-oidc#2
  • Implement Signup support (workflow deposits user back into the app, authenticated). see solid-auth-oidc#4
  • Implement OIDC signout() capability. see solid-auth-oidc#3

External solid apps

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions