pub struct OAuthIdTokenConfig {
pub issuers: Vec<String>,
pub audience: Option<Vec<String>>,
pub client_ids: Option<Vec<String>>,
pub jwks_source: Arc<dyn OAuthJwksSource>,
pub max_age_secs: Option<u64>,
pub allow_opaque_token: bool,
pub algorithm: Option<Algorithm>,
pub selection: OAuthJwksSelection,
pub nonce_comparison: OAuthNonceComparison,
pub verify_claims: Option<Arc<dyn OAuthIdTokenClaimsVerifier>>,
}Expand description
Trusted provider policy. An explicit audience overrides provider client IDs.
Fields§
§issuers: Vec<String>§audience: Option<Vec<String>>§client_ids: Option<Vec<String>>Explicit client-ID array supplied by the provider builder, including an empty array.
jwks_source: Arc<dyn OAuthJwksSource>§max_age_secs: Option<u64>When absent, issued-at is optional and is not bounded by token age.
allow_opaque_token: boolPermits opaque candidates; the provider must independently authenticate the access token in its actual user-info operation before admission.
algorithm: Option<Algorithm>Fixed import algorithm, or the JWK’s declared algorithm for Apple.
selection: OAuthJwksSelection§nonce_comparison: OAuthNonceComparison§verify_claims: Option<Arc<dyn OAuthIdTokenClaimsVerifier>>A trusted additional policy, including tenant binding for multi-tenant issuers. Empty fixed issuers require this policy and otherwise fail closed.
Implementations§
Trait Implementations§
Source§impl Clone for OAuthIdTokenConfig
impl Clone for OAuthIdTokenConfig
Auto Trait Implementations§
impl !RefUnwindSafe for OAuthIdTokenConfig
impl !UnwindSafe for OAuthIdTokenConfig
impl Freeze for OAuthIdTokenConfig
impl Send for OAuthIdTokenConfig
impl Sync for OAuthIdTokenConfig
impl Unpin for OAuthIdTokenConfig
impl UnsafeUnpin for OAuthIdTokenConfig
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> ErasedDestructor for Twhere
T: 'static,
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more