Struct graph_oauth::ClientCertificateCredential
source · pub struct ClientCertificateCredential { /* private fields */ }
Expand description
Client Credentials Using A Certificate
The OAuth 2.0 client credentials grant flow permits a web service (confidential client) to use its own credentials, instead of impersonating a user, to authenticate when calling another web service. The grant specified in RFC 6749, sometimes called two-legged OAuth, can be used to access web-hosted resources by using the identity of an application. This type is commonly used for server-to-server interactions that must run in the background, without immediate interaction with a user, and is often referred to as daemons or service accounts. For more information on the flow see Token Request With a Certificate
The SDK handles certificates and creating the assertion automatically using the openssl crate. This is significantly easier than having to format the assertion from the certificate yourself. If you need to use your own assertion see ClientAssertionCredential
Implementations§
source§impl ClientCertificateCredential
impl ClientCertificateCredential
pub fn builder<T: AsRef<str>>( client_id: T, ) -> ClientCertificateCredentialBuilder
Trait Implementations§
source§impl Clone for ClientCertificateCredential
impl Clone for ClientCertificateCredential
source§fn clone(&self) -> ClientCertificateCredential
fn clone(&self) -> ClientCertificateCredential
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for ClientCertificateCredential
impl Debug for ClientCertificateCredential
source§impl From<ClientCertificateCredential> for ClientCertificateCredentialBuilder
impl From<ClientCertificateCredential> for ClientCertificateCredentialBuilder
source§fn from(credential: ClientCertificateCredential) -> Self
fn from(credential: ClientCertificateCredential) -> Self
source§impl From<ClientCertificateCredential> for ConfidentialClientApplication<ClientCertificateCredential>
impl From<ClientCertificateCredential> for ConfidentialClientApplication<ClientCertificateCredential>
source§fn from(value: ClientCertificateCredential) -> Self
fn from(value: ClientCertificateCredential) -> Self
source§impl From<ClientCertificateCredentialBuilder> for ClientCertificateCredential
impl From<ClientCertificateCredentialBuilder> for ClientCertificateCredential
source§fn from(builder: ClientCertificateCredentialBuilder) -> Self
fn from(builder: ClientCertificateCredentialBuilder) -> Self
source§impl TokenCache for ClientCertificateCredential
impl TokenCache for ClientCertificateCredential
type Token = Token
fn get_token_silent(&mut self) -> Result<Self::Token, AuthExecutionError>
fn get_token_silent_async<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<Self::Token, AuthExecutionError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn with_force_token_refresh(&mut self, force_token_refresh: ForceTokenRefresh)
source§impl TokenCredentialExecutor for ClientCertificateCredential
impl TokenCredentialExecutor for ClientCertificateCredential
fn form_urlencode(&mut self) -> IdentityResult<HashMap<String, String>>
fn client_id(&self) -> &Uuid
fn azure_cloud_instance(&self) -> AzureCloudInstance
fn app_config(&self) -> &AppConfig
fn uri(&mut self) -> IdentityResult<Url>
fn request_parts(&mut self) -> IdentityResult<AuthorizationRequestParts>
fn build_request(&mut self) -> AuthExecutionResult<RequestBuilder>
fn build_request_async(&mut self) -> AuthExecutionResult<RequestBuilder>
fn basic_auth(&self) -> Option<(String, String)>
fn extra_header_parameters(&self) -> &HeaderMap
fn issuer(&self) -> Result<Url, ParseError>
fn extra_query_parameters(&self) -> &HashMap<String, String>
fn execute(&mut self) -> AuthExecutionResult<Response>
fn execute_async<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = AuthExecutionResult<Response>> + Send + 'async_trait>>where
Self: Send + 'async_trait,
'life0: 'async_trait,
Auto Trait Implementations§
impl Freeze for ClientCertificateCredential
impl !RefUnwindSafe for ClientCertificateCredential
impl Send for ClientCertificateCredential
impl Sync for ClientCertificateCredential
impl Unpin for ClientCertificateCredential
impl !UnwindSafe for ClientCertificateCredential
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§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)