pub enum OAuth2Provider {
Google,
GitHub,
Microsoft,
Facebook,
Apple,
Okta,
Auth0,
Keycloak,
Custom,
}Expand description
Common OAuth2/OIDC providers with pre-configured endpoints
Variants§
Google OAuth2/OIDC
GitHub
GitHub OAuth2
Microsoft
Microsoft/Azure AD OAuth2/OIDC
Facebook OAuth2
Apple
Apple Sign In
Okta
Okta OIDC
Auth0
Auth0 OIDC
Keycloak
Keycloak OIDC
Custom
Custom provider (requires manual configuration)
Implementations§
Source§impl OAuth2Provider
impl OAuth2Provider
Sourcepub fn discovery_url(&self) -> Option<&'static str>
pub fn discovery_url(&self) -> Option<&'static str>
Get the OIDC discovery URL for this provider
Sourcepub fn auth_url(&self) -> Option<&'static str>
pub fn auth_url(&self) -> Option<&'static str>
Get the authorization endpoint for this provider
Sourcepub fn userinfo_url(&self) -> Option<&'static str>
pub fn userinfo_url(&self) -> Option<&'static str>
Get the user info endpoint for this provider
Sourcepub fn default_scopes(&self) -> Vec<&'static str>
pub fn default_scopes(&self) -> Vec<&'static str>
Get default scopes for this provider
Sourcepub fn supports_oidc(&self) -> bool
pub fn supports_oidc(&self) -> bool
Check if this provider supports OIDC
Trait Implementations§
Source§impl Clone for OAuth2Provider
impl Clone for OAuth2Provider
Source§fn clone(&self) -> OAuth2Provider
fn clone(&self) -> OAuth2Provider
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 OAuth2Provider
impl Debug for OAuth2Provider
Source§impl<'de> Deserialize<'de> for OAuth2Provider
impl<'de> Deserialize<'de> for OAuth2Provider
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
Source§impl Hash for OAuth2Provider
impl Hash for OAuth2Provider
Source§impl PartialEq for OAuth2Provider
impl PartialEq for OAuth2Provider
Source§impl Serialize for OAuth2Provider
impl Serialize for OAuth2Provider
impl Copy for OAuth2Provider
impl Eq for OAuth2Provider
impl StructuralPartialEq for OAuth2Provider
Auto Trait Implementations§
impl Freeze for OAuth2Provider
impl RefUnwindSafe for OAuth2Provider
impl Send for OAuth2Provider
impl Sync for OAuth2Provider
impl Unpin for OAuth2Provider
impl UnwindSafe for OAuth2Provider
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
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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
Compare self to
key and return true if they are equal.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