# HG changeset patch # User Kim Alvefur # Date 1682864020 -7200 # Node ID f2363e6d9a64b06e82937a40fafa47bd1a54f5cb # Parent d872a1cd8c1db50259234f2a347bfd16ab3a3973 mod_http_oauth2: Advertise the currently supported id_token signing algorithm This field is REQUIRED. The algorithm RS256 MUST be included, but isn't because we don't implement it, as that would require implementing a pile of additional cryptography and JWT stuff. Instead the id_token is signed using the client secret, which allows verification by the client, since it's a shared secret per OpenID Connect Core 1.0 ยง 10.1 under Symmetric Signatures. OpenID Connect Discovery 1.0 has a lot of REQUIRED and MUST clauses that are not supported here, but that's okay because this is served from the RFC 8414 OAuth 2.0 Authorization Server Metadata .well-known endpoint! diff -r d872a1cd8c1d -r f2363e6d9a64 mod_http_oauth2/mod_http_oauth2.lua --- a/mod_http_oauth2/mod_http_oauth2.lua Sun Apr 30 15:20:05 2023 +0200 +++ b/mod_http_oauth2/mod_http_oauth2.lua Sun Apr 30 16:13:40 2023 +0200 @@ -953,6 +953,7 @@ -- OpenID userinfo_endpoint = handle_register_request and module:http_url() .. "/userinfo" or nil; + id_token_signing_alg_values_supported = { "HS256" }; }; }; };