public final class ClientRegistrations
extends java.lang.Object
ClientRegistration.Builder
from an
OpenID Provider Configuration
or Authorization Server Metadata based on
provided issuer.Modifier and Type | Method and Description |
---|---|
static ClientRegistration.Builder |
fromIssuerLocation(java.lang.String issuer)
Creates a
ClientRegistration.Builder using the provided
Issuer by querying
three different discovery endpoints serially, using the values in the first successful response to
initialize. |
static ClientRegistration.Builder |
fromOidcIssuerLocation(java.lang.String issuer)
Creates a
ClientRegistration.Builder using the provided
Issuer by making an
OpenID Provider
Configuration Request and using the values in the
OpenID
Provider Configuration Response to initialize the ClientRegistration.Builder . |
public static ClientRegistration.Builder fromOidcIssuerLocation(java.lang.String issuer)
ClientRegistration.Builder
using the provided
Issuer by making an
OpenID Provider
Configuration Request and using the values in the
OpenID
Provider Configuration Response to initialize the ClientRegistration.Builder
.
For example, if the issuer provided is "https://example.com", then an "OpenID Provider Configuration Request" will be made to "https://example.com/.well-known/openid-configuration". The result is expected to be an "OpenID Provider Configuration Response".
Example usage:
ClientRegistration registration = ClientRegistrations.fromOidcIssuerLocation("https://example.com") .clientId("client-id") .clientSecret("client-secret") .build();
issuer
- the IssuerClientRegistration.Builder
that was initialized by the OpenID Provider Configuration.public static ClientRegistration.Builder fromIssuerLocation(java.lang.String issuer)
ClientRegistration.Builder
using the provided
Issuer by querying
three different discovery endpoints serially, using the values in the first successful response to
initialize. If an endpoint returns anything other than a 200 or a 4xx, the method will exit without
attempting subsequent endpoints.
The three endpoints are computed as follows, given that the issuer
is composed of a host
and a path
:
host/.well-known/openid-configuration/path
, as defined in
RFC 8414's Compatibility Notes.
issuer/.well-known/openid-configuration
, as defined in
OpenID Provider Configuration.
host/.well-known/oauth-authorization-server/path
, as defined in
Authorization Server Metadata Request.
fromOidcIssuerLocation(String)
.
Example usage:
ClientRegistration registration = ClientRegistrations.fromIssuerLocation("https://example.com") .clientId("client-id") .clientSecret("client-secret") .build();
issuer
- ClientRegistration.Builder
that was initialized by one of the described endpoints