pub struct SocialAuthConfig {
pub redirect_uri_allowlist: Vec<String>,
pub google: Option<GoogleSocialConfig>,
pub github: Option<GitHubSocialConfig>,
pub apple: Option<AppleSocialConfig>,
pub discord: Option<DiscordSocialConfig>,
pub facebook: Option<FacebookSocialConfig>,
}Expand description
Social-login provider configuration compiled from [auth.social] (#368).
Each configured provider is auto-registered by the server and served through
the account-linking trust gate at /auth/v1/authorize / /auth/v1/callback.
Only implemented providers are typable: an [auth.social.apple] block is a
compile-time unknown-field error, not a silently-ignored table.
Fields§
§redirect_uri_allowlist: Vec<String>Allow-listed redirect_uri values for the post-login token hand-off
(#427). Empty (the default) keeps the JSON-token response: the
client-supplied redirect_uri is never used as a redirect target, so
there is no open-redirect surface. Non-empty switches the callback to an
implicit-style fragment redirect, refusing any URI not matched here.
google: Option<GoogleSocialConfig>Google OIDC social login.
github: Option<GitHubSocialConfig>GitHub OAuth2 social login (non-OIDC; fixed well-known endpoints).
apple: Option<AppleSocialConfig>Sign in with Apple. Configuring it also mounts the POST variant of
/auth/v1/callback that Apple’s response_mode=form_post requires.
discord: Option<DiscordSocialConfig>Discord OAuth2 social login (non-OIDC).
facebook: Option<FacebookSocialConfig>Facebook OAuth2 social login (non-OIDC).
Trait Implementations§
Source§impl Clone for SocialAuthConfig
impl Clone for SocialAuthConfig
Source§impl Debug for SocialAuthConfig
impl Debug for SocialAuthConfig
Source§impl<'de> Deserialize<'de> for SocialAuthConfig
impl<'de> Deserialize<'de> for SocialAuthConfig
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 SocialAuthConfig
Source§impl PartialEq for SocialAuthConfig
impl PartialEq for SocialAuthConfig
Source§impl Serialize for SocialAuthConfig
impl Serialize for SocialAuthConfig
impl StructuralPartialEq for SocialAuthConfig
Auto Trait Implementations§
impl Freeze for SocialAuthConfig
impl RefUnwindSafe for SocialAuthConfig
impl Send for SocialAuthConfig
impl Sync for SocialAuthConfig
impl Unpin for SocialAuthConfig
impl UnsafeUnpin for SocialAuthConfig
impl UnwindSafe for SocialAuthConfig
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.