pub struct IntegrationsOauthConfig {
pub public_base: Option<String>,
pub clients: OAuthClientConfigs,
pub endpoints: EndpointOverrides,
pub refresh_window_seconds: i64,
pub refresh_batch_size: i64,
pub shared_mailbox_bypass: bool,
pub state_secret_source: String,
}Expand description
The oauth: configuration section (module-local, non-secret). Endpoint
overrides and client ids live here; the state-signing key comes from the
environment named by state_secret_source; a client secret, when a
deployment runs a confidential client, is supplied out-of-band and never
committed in this file.
Fields§
§public_base: Option<String>Deployment base for the OAuth redirect_uri (e.g. https://api.example.com).
clients: OAuthClientConfigsPer-provider OAuth client registrations (the oauth.clients section).
endpoints: EndpointOverridesPer-provider endpoint overrides (the oauth.endpoints section) — empty
by default (registry values); every value passes the endpoint guard at
build time AND per request.
refresh_window_seconds: i64Refresh before expiry by this many seconds.
refresh_batch_size: i64Upper bound on accounts refreshed in one sweep.
Declared admin bypass for the identity email match (shared mailboxes a system operator legitimately relays). Default OFF; every use is logged.
state_secret_source: StringWhere the state-signing key comes from — an environment variable
(env:NAME); any other shape is refused.
Trait Implementations§
Source§impl Clone for IntegrationsOauthConfig
impl Clone for IntegrationsOauthConfig
Source§impl Debug for IntegrationsOauthConfig
impl Debug for IntegrationsOauthConfig
Source§impl Default for IntegrationsOauthConfig
impl Default for IntegrationsOauthConfig
Source§impl<'de> Deserialize<'de> for IntegrationsOauthConfigwhere
IntegrationsOauthConfig: Default,
impl<'de> Deserialize<'de> for IntegrationsOauthConfigwhere
IntegrationsOauthConfig: Default,
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>,
Auto Trait Implementations§
impl Freeze for IntegrationsOauthConfig
impl RefUnwindSafe for IntegrationsOauthConfig
impl Send for IntegrationsOauthConfig
impl Sync for IntegrationsOauthConfig
impl Unpin for IntegrationsOauthConfig
impl UnsafeUnpin for IntegrationsOauthConfig
impl UnwindSafe for IntegrationsOauthConfig
Blanket Implementations§
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
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> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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> ⓘ
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> ⓘ
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