Require and/or describe authentication methods in ID Token

Open
#211 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale

Research direction

Start with the Solid-OIDC specification and its sections covering OP metadata and retrieved ID Tokens. Determine whether acr_values_supported and acr should be required or documented as optional, and define the accepted authentication-context references and their shared meaning. Done means the specification clearly addresses both fields and the proposed authentication assurance semantics.

Written by the indexing model from the issue text.

Description

Because of its decentralized nature, authentication in Solid relies on the trust between a Client and an Identity Provider (OP). This trust can partially be based on the trust between the End-User and the OP (via the solid:oidcIssuer triple in the identity document), but also needs to be complemented with trust in the authentication mechanism(s) of that OP.

It would be valuable if the Solid-OIDC specification requires the use, or at least describes the possibility, of the following optional fields in the OP metadata (.well-known/oidc-configuration) and the retrieved ID Tokens, respectively.

  • acr_values_supported: [a] JSON array containing a list of the Authentication Context Class References that [the] OP supports

  • acr: [a] string specifying an Authentication Context Class Reference value that identifies the Authentication Context Class that the authentication performed satisfied

Interesting Authentication Context Class References are OpenID PAPE levels or IANA LoA profiles. Any other absolute URI can also be used, assuming that there is a shared understanding of its meaning.

Dominant language
Bikeshed
Stars
26
Forks
14
PR merge metrics
No merged PRs in 30d

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from solid/solid-oidc

All issues in solid/solid-oidc

Similar issues

More Security issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.