Early Preview

This is currently very much a preview. Please feel free to try things out, but don't be upset if anything is not yet working. Feedback is welcome over on our GitHub Dicussions page.

class Duende.​IdentityModel.​Client.​DiscoveryDocumentResponse

Assembly: Duende.IdentityModel

Inheritance: object → ProtocolResponse → DiscoveryDocumentResponse

Implemented Interfaces

Represents the response from an OpenID Connect discovery endpoint.

Properties

Policy
Gets or sets the discovery policy used to configure how the discovery document is processed.
public string
Issuer
Gets the issuer identifier for the authorization server.
public string
AuthorizeEndpoint
Gets the authorization endpoint URL.
public string
TokenEndpoint
Gets token endpoint URL.
public string
JwksUri
Gets the URI of the JSON Web Key Set (JWKS).
public string
RegistrationEndpoint
Gets the dynamic client registration (DCR) endpoint URL.
ScopesSupported
Gets the supported scopes.
ResponseTypesSupported
Gets the supported response types.
ResponseModesSupported
Gets the supported response modes.
GrantTypesSupported
Gets the supported grant types.
TokenEndpointAuthenticationMethodsSupported
Gets the authentication methods supported by the token endpoint.
TokenEndpointAuthenticationSigningAlgorithmsSupported
Gets the signing algorithms supported by the token endpoint for the signature on the JWT used to authenticate the client at the token endpoint for the "private_key_jwt" and "client_secret_jwt" authentication methods.
public string
ServiceDocumentation
Gets the service documentation URL.
UILocalesSupported
Gets the languages and scripts supported for the user interface, represented as BCP47 language tags.
public string
OpPolicyUri
Gets the URL that the authorization server provides to the person registering the client to read about the authorization server's requirements on how the client can use the data provided by the authorization server.
public string
OpTosUri
Gets the URL that the authorization server provides to the person registering the client to read about the authorization server's terms of service.
public string
RevocationEndpoint
Gets the revocation endpoint URL.
RevocationEndpointAuthenticationMethodsSupported
Gets the authentication methods supported by the revocation endpoint.
RevocationEndpointAuthenticationSigningAlgorithmsSupported
Gets the signing algorithms supported by the revocation endpoint for the signature on the JWT used to authenticate the client at the token endpoint for the "private_key_jwt" and "client_secret_jwt" authentication methods.
public string
IntrospectionEndpoint
Gets the introspection endpoint URL.
IntrospectionEndpointAuthenticationMethodsSupported
Gets the authentication methods supported by the introspection endpoint.
IntrospectionEndpointAuthenticationSigningAlgorithmsSupported
Gets the signing algorithms supported by the introspection endpoint for the signature on the JWT used to authenticate the client at the token endpoint for the "private_key_jwt" and "client_secret_jwt" authentication methods.
CodeChallengeMethodsSupported
Gets the supported code challenge methods.
public string
SignedMetadata
Gets the signed JWT containing the metadata about the authorization server as claims.
public string
DeviceAuthorizationEndpoint
Gets the device authorization endpoint URL.
public bool?
TlsClientCertificateBoundAccessTokens
Gets a flag indicating whether the authorization server supports TLS client certificate bound access tokens.
MtlsEndpointAliases
Gets the mutual TLS (mTLS) endpoint aliases.
public string
UserInfoEndpoint
Gets user info endpoint URL.
AcrValuesSupported
Gets the Authentication Context Class Reference (ACR) values supported by the OP.
SubjectTypesSupported
Gets the supported subject types.
IdTokenSigningAlgorithmsSupported
Gets the JWS "alg" values supported by the OP for the ID token.
IdTokenEncryptionAlgorithmsSupported
Gets the JWE "alg" values supported by the OP for the ID token.
IdTokenEncryptionEncValuesSupported
Gets the JWE "enc" values supported by the OP for the ID token.
UserInfoSigningAlgorithmsSupported
Gets the JWS "alg" values supported by the UserInfo endpoint.
UserInfoEncryptionAlgorithmsSupported
Gets the JWE "alg" values supported by the UserInfo endpoint.
UserInfoEncryptionEncValuesSupported
Gets the JWE "enc" values supported by the UserInfo endpoint.
RequestObjectSigningAlgorithmsSupported
Gets the JWS "alg" values supported by the OP for request objects.
RequestObjectEncryptionAlgorithmsSupported
Gets the JWE "alg" values supported by the OP for request objects.
RequestObjectEncryptionEncValuesSupported
Gets the JWE "enc" values supported by the OP for request objects.
DisplayValuesSupported
Gets the display parameter values the OpenID Provider supports.
ClaimTypesSupported
Gets the claim types supported by the OpenID Provider.
ClaimsSupported
Gets the supported claims.
ClaimsLocalesSupported
Get the languages and scripts supported for claims, represented as BCP47 language tags.
public bool?
ClaimsParameterSupported
Gets a flag indicating whether the OP supports the use of the "claims" parameter.
public bool?
RequestParameterSupported
Gets a flag indicating whether the OP supports the use of the "request" parameter.
public bool?
RequestUriParameterSupported
Gets a flag indicating whether the OP supports the use of the "request_uri" parameter.
public bool?
RequireRequestUriRegistration
Gets a flag indicating whether the OP requires any request_uri values used to be pre-registered.
public bool?
RequireSignedRequestObject
Gets a flag indicating whether the authorization server requires authorization requests to be protected as a Request Object provided through either the "request" or "request_uri" parameters.
public string
PushedAuthorizationRequestEndpoint
Gets the pushed authorization request (PAR) endpoint URL.
public bool?
RequirePushedAuthorizationRequests
Gets a flag indicating whether the use of pushed authorization requests (PAR) is required.
IntrospectionSigningAlgorithmsSupported
Gets the signing algorithms supported for introspection responses.
IntrospectionEncryptionAlgorithmsSupported
Gets the encryption "alg" values supported for encrypted JWT introspection responses.
IntrospectionEncryptionEncValuesSupported
Gets the encryption "enc" values supported for encrypted JWT introspection responses.
public bool?
AuthorizationResponseIssParameterSupported
Gets a flag indicating whether the authorization server provides the "iss" parameter in the authorization response.
public string
CheckSessionIframe
Gets the check session iframe URL.
public bool?
FrontChannelLogoutSupported
Gets a flag indicating whether front-channel logout is supported.
public bool?
FrontChannelLogoutSessionSupported
Gets a flag indicating whether a session ID (sid) parameter is supported at the front-channel logout endpoint.
public bool?
BackChannelLogoutSupported
Gets a flag indicating if the OP supports back-channel logout.
public bool?
BackChannelLogoutSessionSupported
Gets a flag indicating if the OP supports passing a "sid" (Session ID) claim in the logout token to identify the RP session with the OP.
public string
EndSessionEndpoint
Gets the end session endpoint URL.
BackchannelTokenDeliveryModesSupported
Gets the supported backchannel token delivery modes.
public string
BackchannelAuthenticationEndpoint
Gets the backchannel authentication endpoint URL.
BackchannelAuthenticationRequestSigningAlgValuesSupported
Gets the JWS "alg" values supported for validation of signed CIBA authentication requests.
public bool?
BackchannelUserCodeParameterSupported
Gets a flag indicating whether the backchannel user code parameter is supported.
AuthorizationDetailsTypesSupported
Gets the authorization details types supported by the authorization server.
DPoPSigningAlgorithmsSupported
Gets the JWS "alg" values supported for DPoP proof JWTs.
PromptValuesSupported
Gets the prompt values supported by the OP.
KeySet
Gets or sets the JSON Web Key Set (JWKS) associated with the discovery document.
Gets the HTTP response.
public string
Raw
Gets the raw protocol response (if present).
Gets the protocol response as JSON (if present).
Exception
Gets the exception (if present).
public bool
IsError
Gets a value indicating whether an error occurred.
ErrorType
Gets the type of the error.
protected string
ErrorMessage
Gets or sets an explicit error message.
HttpStatusCode
Gets the HTTP status code - or <c>0</c> when <see cref="P:Duende.IdentityModel.Client.ProtocolResponse.HttpResponse" /> is <see langword="null" /> .
public string
HttpErrorReason
Gets the HTTP error reason - or <see langword="null" /> when <see cref="P:Duende.IdentityModel.Client.ProtocolResponse.HttpResponse" /> is <see langword="null" /> .
public string
Error
Gets the error.
public string
DPoPNonce
The returned DPoP nonce header.

Methods

InitializeAsync​(object initializationData = null)
Initializes the discovery document response using the provided data.
Returns A task that represents the asynchronous operation.
initializationData The data used to initialize the response, typically a DiscoveryPolicy object.
TryGetValue​(string name)
Attempts to retrieve a JSON value for a given property name from the discovery document.
Returns A <see cref="T:System.Text.Json.JsonElement" /> containing the value if found, and <c>null</c> otherwise.
name The name of the property whose value is to be retrieved.
public string
TryGetString​(string name)
Attempts to retrieve a string value for a given property name from the discovery document.
Returns The string value if found, and <c>null</c> otherwise.
name The name of the property whose value is to be retrieved.
public bool?
TryGetBoolean​(string name)
Attempts to retrieve a boolean value for a given property name from the discovery document.
Returns The boolean value if found, and <c>null</c> otherwise.
name The name of the property whose value is to be retrieved.
TryGetStringArray​(string name)
Attempts to retrieve a string array for a given property name from the discovery document.
Returns The collection of strings if found, and an empty collection otherwise.
name The name of the property whose value is to be retrieved.
public bool
ValidateIssuerName​(string issuer, string authority)
Checks if the issuer matches the authority.
issuer The issuer.
authority The authority.
public bool
ValidateIssuerName​(string issuer, string authority, System.​StringComparison nameComparison)
Checks if the issuer matches the authority.
issuer The issuer.
authority The authority.
nameComparison The comparison mechanism that should be used when performing the match.
public string
ValidateEndpoints​(System.​Text.​Json.​JsonElement? json, DiscoveryPolicy policy)
Validates the endoints and jwks_uri according to the security policy.
json The json.
policy The policy.
public string
TryGet​(string name)
Inherited from ProtocolResponse
Tries to get a specific value from the JSON response.
name The name.
public void
Dispose​()
Inherited from ProtocolResponse
Dispose.
public bool
Equals​(object obj)
Inherited from object
protected void
Finalize​()
Inherited from object
public int
GetHashCode​()
Inherited from object
GetType​()
Inherited from object
protected object
MemberwiseClone​()
Inherited from object
public string
ToString​()
Inherited from object