[][src]Struct openidconnect::ProviderMetadata

pub struct ProviderMetadata<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> where
    A: AdditionalProviderMetadata,
    AD: AuthDisplay,
    CA: ClientAuthMethod,
    CN: ClaimName,
    CT: ClaimType,
    G: GrantType,
    JE: JweContentEncryptionAlgorithm<JT>,
    JK: JweKeyManagementAlgorithm,
    JS: JwsSigningAlgorithm<JT>,
    JT: JsonWebKeyType,
    JU: JsonWebKeyUse,
    K: JsonWebKey<JS, JT, JU>,
    RM: ResponseMode,
    RT: ResponseType,
    S: SubjectIdentifierType
{ /* fields omitted */ }

Provider metadata returned by OpenID Connect Discovery.

Methods

impl<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> ProviderMetadata<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> where
    A: AdditionalProviderMetadata,
    AD: AuthDisplay,
    CA: ClientAuthMethod,
    CN: ClaimName,
    CT: ClaimType,
    G: GrantType,
    JE: JweContentEncryptionAlgorithm<JT>,
    JK: JweKeyManagementAlgorithm,
    JS: JwsSigningAlgorithm<JT>,
    JT: JsonWebKeyType,
    JU: JsonWebKeyUse,
    K: JsonWebKey<JS, JT, JU>,
    RM: ResponseMode,
    RT: ResponseType,
    S: SubjectIdentifierType
[src]

pub fn new(
    issuer: IssuerUrl,
    authorization_endpoint: AuthUrl,
    jwks_uri: JsonWebKeySetUrl,
    response_types_supported: Vec<ResponseTypes<RT>>,
    subject_types_supported: Vec<S>,
    id_token_signing_alg_values_supported: Vec<JS>,
    additional_metadata: A
) -> Self
[src]

Instantiates new provider metadata.

pub fn issuer(&self) -> &IssuerUrl[src]

Returns the issuer provider metadata value.

pub fn set_issuer(self, issuer: IssuerUrl) -> Self[src]

Sets the issuer provider metadata value.

pub fn authorization_endpoint(&self) -> &AuthUrl[src]

Returns the authorization_endpoint provider metadata value.

pub fn set_authorization_endpoint(self, authorization_endpoint: AuthUrl) -> Self[src]

Sets the authorization_endpoint provider metadata value.

pub fn token_endpoint(&self) -> Option<&TokenUrl>[src]

Returns the token_endpoint provider metadata value.

pub fn set_token_endpoint(self, token_endpoint: Option<TokenUrl>) -> Self[src]

Sets the token_endpoint provider metadata value.

pub fn userinfo_endpoint(&self) -> Option<&UserInfoUrl>[src]

Returns the userinfo_endpoint provider metadata value.

pub fn set_userinfo_endpoint(
    self,
    userinfo_endpoint: Option<UserInfoUrl>
) -> Self
[src]

Sets the userinfo_endpoint provider metadata value.

pub fn jwks_uri(&self) -> &JsonWebKeySetUrl[src]

Returns the jwks_uri provider metadata value.

pub fn set_jwks_uri(self, jwks_uri: JsonWebKeySetUrl) -> Self[src]

Sets the jwks_uri provider metadata value.

pub fn jwks(&self) -> &JsonWebKeySet<JS, JT, JU, K>[src]

Returns the jwks provider metadata value.

pub fn set_jwks(self, jwks: JsonWebKeySet<JS, JT, JU, K>) -> Self[src]

Sets the jwks provider metadata value.

pub fn registration_endpoint(&self) -> Option<&RegistrationUrl>[src]

Returns the registration_endpoint provider metadata value.

pub fn set_registration_endpoint(
    self,
    registration_endpoint: Option<RegistrationUrl>
) -> Self
[src]

Sets the registration_endpoint provider metadata value.

pub fn scopes_supported(&self) -> Option<&Vec<Scope>>[src]

Returns the scopes_supported provider metadata value.

pub fn set_scopes_supported(self, scopes_supported: Option<Vec<Scope>>) -> Self[src]

Sets the scopes_supported provider metadata value.

pub fn response_types_supported(&self) -> &Vec<ResponseTypes<RT>>[src]

Returns the response_types_supported provider metadata value.

pub fn set_response_types_supported(
    self,
    response_types_supported: Vec<ResponseTypes<RT>>
) -> Self
[src]

Sets the response_types_supported provider metadata value.

pub fn response_modes_supported(&self) -> Option<&Vec<RM>>[src]

Returns the response_modes_supported provider metadata value.

pub fn set_response_modes_supported(
    self,
    response_modes_supported: Option<Vec<RM>>
) -> Self
[src]

Sets the response_modes_supported provider metadata value.

pub fn grant_types_supported(&self) -> Option<&Vec<G>>[src]

Returns the grant_types_supported provider metadata value.

pub fn set_grant_types_supported(
    self,
    grant_types_supported: Option<Vec<G>>
) -> Self
[src]

Sets the grant_types_supported provider metadata value.

pub fn acr_values_supported(&self) -> Option<&Vec<AuthenticationContextClass>>[src]

Returns the acr_values_supported provider metadata value.

pub fn set_acr_values_supported(
    self,
    acr_values_supported: Option<Vec<AuthenticationContextClass>>
) -> Self
[src]

Sets the acr_values_supported provider metadata value.

pub fn subject_types_supported(&self) -> &Vec<S>[src]

Returns the subject_types_supported provider metadata value.

pub fn set_subject_types_supported(
    self,
    subject_types_supported: Vec<S>
) -> Self
[src]

Sets the subject_types_supported provider metadata value.

pub fn id_token_signing_alg_values_supported(&self) -> &Vec<JS>[src]

Returns the id_token_signing_alg_values_supported provider metadata value.

pub fn set_id_token_signing_alg_values_supported(
    self,
    id_token_signing_alg_values_supported: Vec<JS>
) -> Self
[src]

Sets the id_token_signing_alg_values_supported provider metadata value.

pub fn id_token_encryption_alg_values_supported(&self) -> Option<&Vec<JK>>[src]

Returns the id_token_encryption_alg_values_supported provider metadata value.

pub fn set_id_token_encryption_alg_values_supported(
    self,
    id_token_encryption_alg_values_supported: Option<Vec<JK>>
) -> Self
[src]

Sets the id_token_encryption_alg_values_supported provider metadata value.

pub fn id_token_encryption_enc_values_supported(&self) -> Option<&Vec<JE>>[src]

Returns the id_token_encryption_enc_values_supported provider metadata value.

pub fn set_id_token_encryption_enc_values_supported(
    self,
    id_token_encryption_enc_values_supported: Option<Vec<JE>>
) -> Self
[src]

Sets the id_token_encryption_enc_values_supported provider metadata value.

pub fn userinfo_signing_alg_values_supported(&self) -> Option<&Vec<JS>>[src]

Returns the userinfo_signing_alg_values_supported provider metadata value.

pub fn set_userinfo_signing_alg_values_supported(
    self,
    userinfo_signing_alg_values_supported: Option<Vec<JS>>
) -> Self
[src]

Sets the userinfo_signing_alg_values_supported provider metadata value.

pub fn userinfo_encryption_alg_values_supported(&self) -> Option<&Vec<JK>>[src]

Returns the userinfo_encryption_alg_values_supported provider metadata value.

pub fn set_userinfo_encryption_alg_values_supported(
    self,
    userinfo_encryption_alg_values_supported: Option<Vec<JK>>
) -> Self
[src]

Sets the userinfo_encryption_alg_values_supported provider metadata value.

pub fn userinfo_encryption_enc_values_supported(&self) -> Option<&Vec<JE>>[src]

Returns the userinfo_encryption_enc_values_supported provider metadata value.

pub fn set_userinfo_encryption_enc_values_supported(
    self,
    userinfo_encryption_enc_values_supported: Option<Vec<JE>>
) -> Self
[src]

Sets the userinfo_encryption_enc_values_supported provider metadata value.

pub fn request_object_signing_alg_values_supported(&self) -> Option<&Vec<JS>>[src]

Returns the request_object_signing_alg_values_supported provider metadata value.

pub fn set_request_object_signing_alg_values_supported(
    self,
    request_object_signing_alg_values_supported: Option<Vec<JS>>
) -> Self
[src]

Sets the request_object_signing_alg_values_supported provider metadata value.

pub fn request_object_encryption_alg_values_supported(&self) -> Option<&Vec<JK>>[src]

Returns the request_object_encryption_alg_values_supported provider metadata value.

pub fn set_request_object_encryption_alg_values_supported(
    self,
    request_object_encryption_alg_values_supported: Option<Vec<JK>>
) -> Self
[src]

Sets the request_object_encryption_alg_values_supported provider metadata value.

pub fn request_object_encryption_enc_values_supported(&self) -> Option<&Vec<JE>>[src]

Returns the request_object_encryption_enc_values_supported provider metadata value.

pub fn set_request_object_encryption_enc_values_supported(
    self,
    request_object_encryption_enc_values_supported: Option<Vec<JE>>
) -> Self
[src]

Sets the request_object_encryption_enc_values_supported provider metadata value.

pub fn token_endpoint_auth_methods_supported(&self) -> Option<&Vec<CA>>[src]

Returns the token_endpoint_auth_methods_supported provider metadata value.

pub fn set_token_endpoint_auth_methods_supported(
    self,
    token_endpoint_auth_methods_supported: Option<Vec<CA>>
) -> Self
[src]

Sets the token_endpoint_auth_methods_supported provider metadata value.

pub fn token_endpoint_auth_signing_alg_values_supported(
    &self
) -> Option<&Vec<JS>>
[src]

Returns the token_endpoint_auth_signing_alg_values_supported provider metadata value.

pub fn set_token_endpoint_auth_signing_alg_values_supported(
    self,
    token_endpoint_auth_signing_alg_values_supported: Option<Vec<JS>>
) -> Self
[src]

Sets the token_endpoint_auth_signing_alg_values_supported provider metadata value.

pub fn display_values_supported(&self) -> Option<&Vec<AD>>[src]

Returns the display_values_supported provider metadata value.

pub fn set_display_values_supported(
    self,
    display_values_supported: Option<Vec<AD>>
) -> Self
[src]

Sets the display_values_supported provider metadata value.

pub fn claim_types_supported(&self) -> Option<&Vec<CT>>[src]

Returns the claim_types_supported provider metadata value.

pub fn set_claim_types_supported(
    self,
    claim_types_supported: Option<Vec<CT>>
) -> Self
[src]

Sets the claim_types_supported provider metadata value.

pub fn claims_supported(&self) -> Option<&Vec<CN>>[src]

Returns the claims_supported provider metadata value.

pub fn set_claims_supported(self, claims_supported: Option<Vec<CN>>) -> Self[src]

Sets the claims_supported provider metadata value.

pub fn service_documentation(&self) -> Option<&ServiceDocUrl>[src]

Returns the service_documentation provider metadata value.

pub fn set_service_documentation(
    self,
    service_documentation: Option<ServiceDocUrl>
) -> Self
[src]

Sets the service_documentation provider metadata value.

pub fn claims_locales_supported(&self) -> Option<&Vec<LanguageTag>>[src]

Returns the claims_locales_supported provider metadata value.

pub fn set_claims_locales_supported(
    self,
    claims_locales_supported: Option<Vec<LanguageTag>>
) -> Self
[src]

Sets the claims_locales_supported provider metadata value.

pub fn ui_locales_supported(&self) -> Option<&Vec<LanguageTag>>[src]

Returns the ui_locales_supported provider metadata value.

pub fn set_ui_locales_supported(
    self,
    ui_locales_supported: Option<Vec<LanguageTag>>
) -> Self
[src]

Sets the ui_locales_supported provider metadata value.

pub fn claims_parameter_supported(&self) -> Option<bool>[src]

Returns the claims_parameter_supported provider metadata value.

pub fn set_claims_parameter_supported(
    self,
    claims_parameter_supported: Option<bool>
) -> Self
[src]

Sets the claims_parameter_supported provider metadata value.

pub fn request_parameter_supported(&self) -> Option<bool>[src]

Returns the request_parameter_supported provider metadata value.

pub fn set_request_parameter_supported(
    self,
    request_parameter_supported: Option<bool>
) -> Self
[src]

Sets the request_parameter_supported provider metadata value.

pub fn request_uri_parameter_supported(&self) -> Option<bool>[src]

Returns the request_uri_parameter_supported provider metadata value.

pub fn set_request_uri_parameter_supported(
    self,
    request_uri_parameter_supported: Option<bool>
) -> Self
[src]

Sets the request_uri_parameter_supported provider metadata value.

pub fn require_request_uri_registration(&self) -> Option<bool>[src]

Returns the require_request_uri_registration provider metadata value.

pub fn set_require_request_uri_registration(
    self,
    require_request_uri_registration: Option<bool>
) -> Self
[src]

Sets the require_request_uri_registration provider metadata value.

pub fn op_policy_uri(&self) -> Option<&OpPolicyUrl>[src]

Returns the op_policy_uri provider metadata value.

pub fn set_op_policy_uri(self, op_policy_uri: Option<OpPolicyUrl>) -> Self[src]

Sets the op_policy_uri provider metadata value.

pub fn op_tos_uri(&self) -> Option<&OpTosUrl>[src]

Returns the op_tos_uri provider metadata value.

pub fn set_op_tos_uri(self, op_tos_uri: Option<OpTosUrl>) -> Self[src]

Sets the op_tos_uri provider metadata value.

pub fn discover<HC, RE>(
    issuer_url: &IssuerUrl,
    http_client: HC
) -> Result<Self, DiscoveryError<RE>> where
    HC: Fn(HttpRequest) -> Result<HttpResponse, RE>,
    RE: Fail
[src]

Fetches the OpenID Connect Discovery document and associated JSON Web Key Set from the OpenID Connect Provider.

pub fn discover_async<F, HC, RE>(
    issuer_url: IssuerUrl,
    http_client: HC
) -> impl Future<Item = Self, Error = DiscoveryError<RE>> where
    F: Future<Item = HttpResponse, Error = RE>,
    HC: Fn(HttpRequest) -> F + 'static,
    RE: Fail
[src]

Asynchronously fetches the OpenID Connect Discovery document and associated JSON Web Key Set from the OpenID Connect Provider.

pub fn additional_metadata(&self) -> &A[src]

Returns additional provider metadata fields.

pub fn additional_metadata_mut(&mut self) -> &mut A[src]

Returns mutable additional provider metadata fields.

Trait Implementations

impl<A: Clone, AD: Clone, CA: Clone, CN: Clone, CT: Clone, G: Clone, JE: Clone, JK: Clone, JS: Clone, JT: Clone, JU: Clone, K: Clone, RM: Clone, RT: Clone, S: Clone> Clone for ProviderMetadata<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> where
    A: AdditionalProviderMetadata,
    AD: AuthDisplay,
    CA: ClientAuthMethod,
    CN: ClaimName,
    CT: ClaimType,
    G: GrantType,
    JE: JweContentEncryptionAlgorithm<JT>,
    JK: JweKeyManagementAlgorithm,
    JS: JwsSigningAlgorithm<JT>,
    JT: JsonWebKeyType,
    JU: JsonWebKeyUse,
    K: JsonWebKey<JS, JT, JU>,
    RM: ResponseMode,
    RT: ResponseType,
    S: SubjectIdentifierType
[src]

impl<A: PartialEq, AD: PartialEq, CA: PartialEq, CN: PartialEq, CT: PartialEq, G: PartialEq, JE: PartialEq, JK: PartialEq, JS: PartialEq, JT: PartialEq, JU: PartialEq, K: PartialEq, RM: PartialEq, RT: PartialEq, S: PartialEq> PartialEq<ProviderMetadata<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S>> for ProviderMetadata<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> where
    A: AdditionalProviderMetadata,
    AD: AuthDisplay,
    CA: ClientAuthMethod,
    CN: ClaimName,
    CT: ClaimType,
    G: GrantType,
    JE: JweContentEncryptionAlgorithm<JT>,
    JK: JweKeyManagementAlgorithm,
    JS: JwsSigningAlgorithm<JT>,
    JT: JsonWebKeyType,
    JU: JsonWebKeyUse,
    K: JsonWebKey<JS, JT, JU>,
    RM: ResponseMode,
    RT: ResponseType,
    S: SubjectIdentifierType
[src]

impl<A: Debug, AD: Debug, CA: Debug, CN: Debug, CT: Debug, G: Debug, JE: Debug, JK: Debug, JS: Debug, JT: Debug, JU: Debug, K: Debug, RM: Debug, RT: Debug, S: Debug> Debug for ProviderMetadata<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> where
    A: AdditionalProviderMetadata,
    AD: AuthDisplay,
    CA: ClientAuthMethod,
    CN: ClaimName,
    CT: ClaimType,
    G: GrantType,
    JE: JweContentEncryptionAlgorithm<JT>,
    JK: JweKeyManagementAlgorithm,
    JS: JwsSigningAlgorithm<JT>,
    JT: JsonWebKeyType,
    JU: JsonWebKeyUse,
    K: JsonWebKey<JS, JT, JU>,
    RM: ResponseMode,
    RT: ResponseType,
    S: SubjectIdentifierType
[src]

impl<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> Serialize for ProviderMetadata<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> where
    A: AdditionalProviderMetadata,
    AD: AuthDisplay,
    CA: ClientAuthMethod,
    CN: ClaimName,
    CT: ClaimType,
    G: GrantType,
    JE: JweContentEncryptionAlgorithm<JT>,
    JK: JweKeyManagementAlgorithm,
    JS: JwsSigningAlgorithm<JT>,
    JT: JsonWebKeyType,
    JU: JsonWebKeyUse,
    K: JsonWebKey<JS, JT, JU>,
    RM: ResponseMode,
    RT: ResponseType,
    S: SubjectIdentifierType,
    A: Serialize,
    AD: Serialize,
    CA: Serialize,
    CN: Serialize,
    CT: Serialize,
    G: Serialize,
    JE: Serialize,
    JK: Serialize,
    JS: Serialize,
    RM: Serialize,
    RT: Serialize,
    S: Serialize
[src]

impl<'de, A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> Deserialize<'de> for ProviderMetadata<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> where
    A: AdditionalProviderMetadata,
    AD: AuthDisplay,
    CA: ClientAuthMethod,
    CN: ClaimName,
    CT: ClaimType,
    G: GrantType,
    JE: JweContentEncryptionAlgorithm<JT>,
    JK: JweKeyManagementAlgorithm,
    JS: JwsSigningAlgorithm<JT>,
    JT: JsonWebKeyType,
    JU: JsonWebKeyUse,
    K: JsonWebKey<JS, JT, JU>,
    RM: ResponseMode,
    RT: ResponseType,
    S: SubjectIdentifierType,
    RT: ResponseType,
    RM: ResponseMode,
    G: GrantType,
    S: SubjectIdentifierType,
    JS: JwsSigningAlgorithm<JT>,
    JK: JweKeyManagementAlgorithm,
    JE: JweContentEncryptionAlgorithm<JT>,
    JS: JwsSigningAlgorithm<JT>,
    JK: JweKeyManagementAlgorithm,
    JE: JweContentEncryptionAlgorithm<JT>,
    JS: JwsSigningAlgorithm<JT>,
    JK: JweKeyManagementAlgorithm,
    JE: JweContentEncryptionAlgorithm<JT>,
    CA: ClientAuthMethod,
    JS: JwsSigningAlgorithm<JT>,
    AD: AuthDisplay,
    CT: ClaimType,
    CN: ClaimName,
    A: AdditionalProviderMetadata
[src]

Auto Trait Implementations

impl<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> Unpin for ProviderMetadata<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> where
    A: Unpin,
    AD: Unpin,
    CA: Unpin,
    CN: Unpin,
    CT: Unpin,
    G: Unpin,
    JE: Unpin,
    JK: Unpin,
    JS: Unpin,
    JT: Unpin,
    JU: Unpin,
    K: Unpin,
    RM: Unpin,
    RT: Unpin,
    S: Unpin

impl<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> Sync for ProviderMetadata<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> where
    A: Sync,
    AD: Sync,
    CA: Sync,
    CN: Sync,
    CT: Sync,
    G: Sync,
    JE: Sync,
    JK: Sync,
    JS: Sync,
    JT: Sync,
    JU: Sync,
    K: Sync,
    RM: Sync,
    RT: Sync,
    S: Sync

impl<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> Send for ProviderMetadata<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> where
    A: Send,
    AD: Send,
    CA: Send,
    CN: Send,
    CT: Send,
    G: Send,
    JE: Send,
    JK: Send,
    JS: Send,
    JT: Send,
    JU: Send,
    K: Send,
    RM: Send,
    RT: Send,
    S: Send

impl<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> UnwindSafe for ProviderMetadata<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> where
    A: UnwindSafe,
    AD: UnwindSafe,
    CA: UnwindSafe,
    CN: UnwindSafe,
    CT: UnwindSafe,
    G: UnwindSafe,
    JE: UnwindSafe,
    JK: UnwindSafe,
    JS: UnwindSafe,
    JT: UnwindSafe,
    JU: UnwindSafe,
    K: UnwindSafe,
    RM: UnwindSafe,
    RT: UnwindSafe,
    S: UnwindSafe

impl<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> RefUnwindSafe for ProviderMetadata<A, AD, CA, CN, CT, G, JE, JK, JS, JT, JU, K, RM, RT, S> where
    A: RefUnwindSafe,
    AD: RefUnwindSafe,
    CA: RefUnwindSafe,
    CN: RefUnwindSafe,
    CT: RefUnwindSafe,
    G: RefUnwindSafe,
    JE: RefUnwindSafe,
    JK: RefUnwindSafe,
    JS: RefUnwindSafe,
    JT: RefUnwindSafe,
    JU: RefUnwindSafe,
    K: RefUnwindSafe,
    RM: RefUnwindSafe,
    RT: RefUnwindSafe,
    S: RefUnwindSafe

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: Deserialize<'de>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> Erased for T

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 

type Err = <U as TryFrom<T>>::Err