feat: support OIDC id_token

- generate JWT id_token in token exchange
- store optional nonce in authorization object
- switch to RS256 algorithm for JWT signature
- add JWKs endpoint to provide OIDC clients with public keys
This commit is contained in:
Matthieu Bessat 2024-12-12 01:12:40 +01:00
parent ca84a0f99f
commit d982f2af0d
29 changed files with 255 additions and 82 deletions

View file

@ -1,3 +1,5 @@
signing_key = "tmp/secrets/signing.key"
[instance]
base_uri = "http://localhost:8086"
name = "Example org"

View file

@ -1,6 +1,6 @@
POST {{ base_url }}/login
[FormParams]
login: root
login: john.doe
password: root
HTTP 303
[Captures]

View file

@ -1,3 +1,5 @@
signing_key = "tmp/secrets/signing.key"
[instance]
base_uri = "http://localhost:8086"
name = "Example org"

View file

@ -27,7 +27,7 @@ handle: root
email: root@johndoe.net
full_name: John Doe
website: https://johndoe.net
picture: file,john_doe_profile_pic.jpg; image/jpeg
avatar: file,john_doe_profile_pic.jpg; image/jpeg
HTTP 200
GET {{ base_url }}/me/authorizations

View file

@ -1,3 +1,4 @@
signing_key = "tmp/secrets/signing.key"
applications = []
roles = []