Client Discovery - nov/openid_connect GitHub Wiki

NOTE

Since OpenID Connect Discovery is OPTIONAL feature, not all OPs are supporting it.

Basically, Discovery is needed for OPs which support Dynamic Registration. However, I know no OPs supporting Dynamic Registration.

Some OPs are supporting Discovery without supporting Dynamic Registration, but I don't think RPs "need" to discover OP config for such OPs. Almost all RPs won't need this feature currently.

Issuer Discovery

result = OpenIDConnect::Discovery::Provider.discover! url_host_or_email
# => WebFinger::Response (extending OpenIDConnect::Discovery::Provider::Issuer)

issuer = result.issuer

OP Config Discovery

OpenIDConnect::Discovery::Provider::Config.discover! issuer
# => OpenIDConnect::Discovery::Provider::Config::Response