Struct mas_data_model::Client
source · pub struct Client {Show 17 fields
pub id: Ulid,
pub client_id: String,
pub encrypted_client_secret: Option<String>,
pub application_type: Option<ApplicationType>,
pub redirect_uris: Vec<Url>,
pub grant_types: Vec<GrantType>,
pub client_name: Option<String>,
pub logo_uri: Option<Url>,
pub client_uri: Option<Url>,
pub policy_uri: Option<Url>,
pub tos_uri: Option<Url>,
pub jwks: Option<JwksOrJwksUri>,
pub id_token_signed_response_alg: Option<JsonWebSignatureAlg>,
pub userinfo_signed_response_alg: Option<JsonWebSignatureAlg>,
pub token_endpoint_auth_method: Option<OAuthClientAuthenticationMethod>,
pub token_endpoint_auth_signing_alg: Option<JsonWebSignatureAlg>,
pub initiate_login_uri: Option<Url>,
}
Fields§
§id: Ulid
§client_id: String
Client identifier
encrypted_client_secret: Option<String>
§application_type: Option<ApplicationType>
§redirect_uris: Vec<Url>
Array of Redirection URI values used by the Client
grant_types: Vec<GrantType>
Array containing a list of the OAuth 2.0 Grant Types that the Client is declaring that it will restrict itself to using.
client_name: Option<String>
Name of the Client to be presented to the End-User
logo_uri: Option<Url>
URL that references a logo for the Client application
client_uri: Option<Url>
URL of the home page of the Client
policy_uri: Option<Url>
URL that the Relying Party Client provides to the End-User to read about the how the profile data will be used
tos_uri: Option<Url>
URL that the Relying Party Client provides to the End-User to read about the Relying Party’s terms of service
jwks: Option<JwksOrJwksUri>
§id_token_signed_response_alg: Option<JsonWebSignatureAlg>
JWS alg algorithm REQUIRED for signing the ID Token issued to this Client
userinfo_signed_response_alg: Option<JsonWebSignatureAlg>
JWS alg algorithm REQUIRED for signing UserInfo
Responses.
token_endpoint_auth_method: Option<OAuthClientAuthenticationMethod>
Requested authentication method for the token endpoint
token_endpoint_auth_signing_alg: Option<JsonWebSignatureAlg>
JWS alg algorithm that MUST be used for signing the JWT used to
authenticate the Client at the Token Endpoint for the private_key_jwt
and client_secret_jwt
authentication methods
initiate_login_uri: Option<Url>
URI using the https scheme that a third party can use to initiate a login by the RP
Implementations§
source§impl Client
impl Client
sourcepub fn resolve_redirect_uri<'a>(
&'a self,
redirect_uri: &'a Option<Url>,
) -> Result<&'a Url, InvalidRedirectUriError>
pub fn resolve_redirect_uri<'a>( &'a self, redirect_uri: &'a Option<Url>, ) -> Result<&'a Url, InvalidRedirectUriError>
Determine which redirect URI to use for the given request.
§Errors
Returns an error if:
- no URL was given but multiple redirect URIs are registered,
- no URL was registered, or
- the given URL is not registered
sourcepub fn into_metadata(self) -> ClientMetadata
pub fn into_metadata(self) -> ClientMetadata
Create a client metadata object for this client
Trait Implementations§
impl Eq for Client
impl StructuralPartialEq for Client
Auto Trait Implementations§
impl Freeze for Client
impl RefUnwindSafe for Client
impl Send for Client
impl Sync for Client
impl Unpin for Client
impl UnwindSafe for Client
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,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)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
key
and return true
if they are equal.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.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