pub struct PkceClientConfig {
pub discovery_url: String,
pub client_id: String,
pub client_secret_env: String,
pub server_redirect_uri: String,
}Expand description
PKCE OAuth-client configuration compiled from the [auth] PKCE group (#621).
The client secret is never carried here — client_secret_env names the
environment variable the runtime reads it from. The authorization_endpoint /
token_endpoint are deliberately absent: the runtime resolves them at boot by
fetching discovery_url’s .well-known/openid-configuration, so the compiler
performs no network I/O and the endpoints cannot go stale in a cached schema.
Fields§
§discovery_url: StringOIDC provider discovery base URL (e.g. https://accounts.google.com). The
runtime appends /.well-known/openid-configuration at boot.
client_id: StringOAuth2 client_id registered with the provider.
client_secret_env: StringName of the environment variable holding the client secret.
server_redirect_uri: StringThis server’s /auth/callback URL, registered with the provider.
Trait Implementations§
Source§impl Clone for PkceClientConfig
impl Clone for PkceClientConfig
Source§impl Debug for PkceClientConfig
impl Debug for PkceClientConfig
Source§impl<'de> Deserialize<'de> for PkceClientConfig
impl<'de> Deserialize<'de> for PkceClientConfig
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>,
impl Eq for PkceClientConfig
Source§impl PartialEq for PkceClientConfig
impl PartialEq for PkceClientConfig
Source§impl Serialize for PkceClientConfig
impl Serialize for PkceClientConfig
impl StructuralPartialEq for PkceClientConfig
Auto Trait Implementations§
impl Freeze for PkceClientConfig
impl RefUnwindSafe for PkceClientConfig
impl Send for PkceClientConfig
impl Sync for PkceClientConfig
impl Unpin for PkceClientConfig
impl UnsafeUnpin for PkceClientConfig
impl UnwindSafe for PkceClientConfig
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
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.