public class AuthorizationServiceDiscovery extends Object
Modifier and Type | Class and Description |
---|---|
static class |
AuthorizationServiceDiscovery.MissingArgumentException
Thrown when a mandatory property is missing from the discovery document.
|
Modifier and Type | Field and Description |
---|---|
JSONObject |
docJson
The JSON representation of the discovery document.
|
Constructor and Description |
---|
AuthorizationServiceDiscovery(JSONObject discoveryDoc)
Extracts a discovery document from its standard JSON representation.
|
Modifier and Type | Method and Description |
---|---|
List<String> |
getAcrValuesSupported()
The authentication context class references supported.
|
Uri |
getAuthorizationEndpoint()
The OAuth 2 authorization endpoint URI.
|
List<String> |
getClaimsLocalesSupported()
Languages and scripts supported for values in claims being returned.
|
List<String> |
getClaimsSupported()
The claim names of the claims that the provider may be able to supply values for.
|
List<String> |
getClaimTypesSupported()
The claim types supported.
|
List<String> |
getDisplayValuesSupported()
The
display parameter values supported. |
List<String> |
getGrantTypesSupported()
The OAuth 2
grant_type values supported. |
List<String> |
getIdTokenEncryptionAlgorithmValuesSupported()
The JWE encryption algorithms (alg values) supported for encoding ID token claims.
|
List<String> |
getIdTokenEncryptionEncodingValuesSupported()
The JWE encryption encodings (enc values) supported for encoding ID token claims.
|
List<String> |
getIdTokenSigningAlgorithmValuesSupported()
The JWS signing algorithms (alg values) supported for encoding ID token claims.
|
String |
getIssuer()
The asserted issuer identifier.
|
Uri |
getJwksUri()
The JSON web key set document URI.
|
Uri |
getOpPolicyUri()
A page articulating the policy regarding the use of data provided by the provider.
|
Uri |
getOpTosUri()
A page articulating the terms of service for the provider.
|
Uri |
getRegistrationEndpoint()
The dynamic client registration endpoint URI.
|
List<String> |
getRequestObjectEncryptionAlgorithmValuesSupported()
The JWE encryption algorithms (alg values) supported for Request Objects.
|
List<String> |
getRequestObjectEncryptionEncodingValuesSupported()
The JWE encryption encodings (enc values) supported for Request Objects.
|
List<String> |
getRequestObjectSigningAlgorithmValuesSupported()
The JWS signing algorithms (alg values) supported for Request Objects.
|
List<String> |
getResponseModesSupported()
The OAuth 2
response_mode values supported. |
List<String> |
getResponseTypesSupported()
The OAuth 2
response_type values supported. |
List<String> |
getScopesSupported()
The OAuth 2 scope values supported.
|
Uri |
getServiceDocumentation()
A page containing human-readable information that developers might want or need to know when
using this provider.
|
List<String> |
getSubjectTypesSupported()
The subject identifier types supported.
|
Uri |
getTokenEndpoint()
The OAuth 2 token endpoint URI.
|
List<String> |
getTokenEndpointAuthMethodsSupported()
The client authentication methods supported by the token endpoint.
|
List<String> |
getTokenEndpointAuthSigningAlgorithmValuesSupported()
The JWS signing algorithms (alg values) supported by the token endpoint for the signature on
the JWT used to authenticate the client for the
private_key_jwt and
client_secret_jwt authentication methods. |
List<String> |
getUiLocalesSupported()
Languages and scripts supported for the user interface.
|
List<String> |
getUserinfoEncryptionAlgorithmValuesSupported()
The JWE encryption algorithms (alg values) supported by the UserInfo Endpoint
for encoding ID token claims.
|
List<String> |
getUserinfoEncryptionEncodingValuesSupported()
The JWE encryption encodings (enc values) supported by the UserInfo Endpoint
for encoding ID token claims.
|
Uri |
getUserinfoEndpoint()
The OpenID Connect UserInfo endpoint URI.
|
List<String> |
getUserinfoSigningAlgorithmValuesSupported()
The JWS signing algorithms (alg values) supported by the UserInfo Endpoint
for encoding ID token claims.
|
boolean |
isClaimsParameterSupported()
Specifies whether the
claims parameter is supported for authorization requests. |
boolean |
isRequestParameterSupported()
Specifies whether the
request parameter is supported for authorization requests. |
boolean |
isRequestUriParameterSupported()
Specifies whether the
request_uri is supported for authorization requests. |
boolean |
requireRequestUriRegistration()
Specifies whether
request_uri values are required to be pre-registered before use. |
@NonNull public final JSONObject docJson
public AuthorizationServiceDiscovery(@NonNull JSONObject discoveryDoc) throws JSONException, AuthorizationServiceDiscovery.MissingArgumentException
JSONException
- if the provided JSON does not match the expected structure.AuthorizationServiceDiscovery.MissingArgumentException
- if a mandatory property is missing from the discovery
document.@NonNull public Uri getAuthorizationEndpoint()
@Nullable public Uri getTokenEndpoint()
@Nullable public Uri getUserinfoEndpoint()
@NonNull public Uri getJwksUri()
@Nullable public Uri getRegistrationEndpoint()
public List<String> getScopesSupported()
@NonNull public List<String> getResponseTypesSupported()
response_type
values supported.@Nullable public List<String> getResponseModesSupported()
response_mode
values supported.@NonNull public List<String> getGrantTypesSupported()
grant_type
values supported. Defaults to
authorization_code
and implicit
if not specified in the discovery document,
as suggested by the discovery specification.public List<String> getAcrValuesSupported()
@NonNull public List<String> getSubjectTypesSupported()
@NonNull public List<String> getIdTokenSigningAlgorithmValuesSupported()
@Nullable public List<String> getIdTokenEncryptionAlgorithmValuesSupported()
@Nullable public List<String> getIdTokenEncryptionEncodingValuesSupported()
@Nullable public List<String> getUserinfoSigningAlgorithmValuesSupported()
@Nullable public List<String> getUserinfoEncryptionAlgorithmValuesSupported()
@Nullable public List<String> getUserinfoEncryptionEncodingValuesSupported()
public List<String> getRequestObjectSigningAlgorithmValuesSupported()
@Nullable public List<String> getRequestObjectEncryptionAlgorithmValuesSupported()
@Nullable public List<String> getRequestObjectEncryptionEncodingValuesSupported()
@NonNull public List<String> getTokenEndpointAuthMethodsSupported()
client_secret_basic
if the discovery document does not specify a value, as suggested
by the discovery specification.@Nullable public List<String> getTokenEndpointAuthSigningAlgorithmValuesSupported()
private_key_jwt
and
client_secret_jwt
authentication methods.@Nullable public List<String> getDisplayValuesSupported()
display
parameter values supported.public List<String> getClaimTypesSupported()
normal
if not specified by the discovery
document JSON, as suggested by the discovery specification.@Nullable public List<String> getClaimsSupported()
@Nullable public Uri getServiceDocumentation()
@Nullable public List<String> getClaimsLocalesSupported()
@Nullable public List<String> getUiLocalesSupported()
public boolean isClaimsParameterSupported()
claims
parameter is supported for authorization requests.public boolean isRequestParameterSupported()
request
parameter is supported for authorization requests.public boolean isRequestUriParameterSupported()
request_uri
is supported for authorization requests.public boolean requireRequestUriRegistration()
request_uri
values are required to be pre-registered before use.@Nullable public Uri getOpPolicyUri()