#[non_exhaustive]pub struct ExternalIssuerConfig {
pub issuer_url: String,
pub audience: Vec<String>,
pub jwks_refresh_secs: u64,
}Expand description
One trusted external OIDC issuer for pass-through JWT validation.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.issuer_url: StringIssuer URL — the value the JWT’s iss claim is matched against
and the base for <issuer_url>/.well-known/openid-configuration
discovery. Trailing slashes are normalized.
audience: Vec<String>Accepted aud claim values. A token whose aud isn’t in this
list is rejected. Empty list = audience check disabled (NOT
recommended; set explicitly per deployment).
jwks_refresh_secs: u64JWKS refresh interval in seconds (background task). Default 3600 (1 hour). Minimum effective value 60 seconds — anything smaller is clamped to avoid hammering the upstream’s JWKS endpoint.
Trait Implementations§
Source§impl Clone for ExternalIssuerConfig
impl Clone for ExternalIssuerConfig
Source§fn clone(&self) -> ExternalIssuerConfig
fn clone(&self) -> ExternalIssuerConfig
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ExternalIssuerConfig
impl Debug for ExternalIssuerConfig
Source§impl Default for ExternalIssuerConfig
impl Default for ExternalIssuerConfig
Source§fn default() -> ExternalIssuerConfig
fn default() -> ExternalIssuerConfig
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for ExternalIssuerConfig
impl<'de> Deserialize<'de> for ExternalIssuerConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for ExternalIssuerConfig
impl RefUnwindSafe for ExternalIssuerConfig
impl Send for ExternalIssuerConfig
impl Sync for ExternalIssuerConfig
impl Unpin for ExternalIssuerConfig
impl UnsafeUnpin for ExternalIssuerConfig
impl UnwindSafe for ExternalIssuerConfig
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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