Struct google_api_proto::google::iam::credentials::v1::iam_credentials_client::IamCredentialsClient
source · pub struct IamCredentialsClient<T> { /* private fields */ }
Expand description
A service account is a special type of Google account that belongs to your application or a virtual machine (VM), instead of to an individual end user. Your application assumes the identity of the service account to call Google APIs, so that the users aren’t directly involved.
Service account credentials are used to temporarily assume the identity of the service account. Supported credential types include OAuth 2.0 access tokens, OpenID Connect ID tokens, self-signed JSON Web Tokens (JWTs), and more.
Implementations§
source§impl<T> IamCredentialsClient<T>where
T: GrpcService<BoxBody>,
T::Error: Into<StdError>,
T::ResponseBody: Body<Data = Bytes> + Send + 'static,
<T::ResponseBody as Body>::Error: Into<StdError> + Send,
impl<T> IamCredentialsClient<T>where
T: GrpcService<BoxBody>,
T::Error: Into<StdError>,
T::ResponseBody: Body<Data = Bytes> + Send + 'static,
<T::ResponseBody as Body>::Error: Into<StdError> + Send,
pub fn new(inner: T) -> Self
pub fn with_origin(inner: T, origin: Uri) -> Self
pub fn with_interceptor<F>(
inner: T,
interceptor: F,
) -> IamCredentialsClient<InterceptedService<T, F>>where
F: Interceptor,
T::ResponseBody: Default,
T: Service<Request<BoxBody>, Response = Response<<T as GrpcService<BoxBody>>::ResponseBody>>,
<T as Service<Request<BoxBody>>>::Error: Into<StdError> + Send + Sync,
sourcepub fn send_compressed(self, encoding: CompressionEncoding) -> Self
pub fn send_compressed(self, encoding: CompressionEncoding) -> Self
Compress requests with the given encoding.
This requires the server to support it otherwise it might respond with an error.
sourcepub fn accept_compressed(self, encoding: CompressionEncoding) -> Self
pub fn accept_compressed(self, encoding: CompressionEncoding) -> Self
Enable decompressing responses.
sourcepub fn max_decoding_message_size(self, limit: usize) -> Self
pub fn max_decoding_message_size(self, limit: usize) -> Self
Limits the maximum size of a decoded message.
Default: 4MB
sourcepub fn max_encoding_message_size(self, limit: usize) -> Self
pub fn max_encoding_message_size(self, limit: usize) -> Self
Limits the maximum size of an encoded message.
Default: usize::MAX
sourcepub async fn generate_access_token(
&mut self,
request: impl IntoRequest<GenerateAccessTokenRequest>,
) -> Result<Response<GenerateAccessTokenResponse>, Status>
pub async fn generate_access_token( &mut self, request: impl IntoRequest<GenerateAccessTokenRequest>, ) -> Result<Response<GenerateAccessTokenResponse>, Status>
Generates an OAuth 2.0 access token for a service account.
sourcepub async fn generate_id_token(
&mut self,
request: impl IntoRequest<GenerateIdTokenRequest>,
) -> Result<Response<GenerateIdTokenResponse>, Status>
pub async fn generate_id_token( &mut self, request: impl IntoRequest<GenerateIdTokenRequest>, ) -> Result<Response<GenerateIdTokenResponse>, Status>
Generates an OpenID Connect ID token for a service account.
sourcepub async fn sign_blob(
&mut self,
request: impl IntoRequest<SignBlobRequest>,
) -> Result<Response<SignBlobResponse>, Status>
pub async fn sign_blob( &mut self, request: impl IntoRequest<SignBlobRequest>, ) -> Result<Response<SignBlobResponse>, Status>
Signs a blob using a service account’s system-managed private key.
sourcepub async fn sign_jwt(
&mut self,
request: impl IntoRequest<SignJwtRequest>,
) -> Result<Response<SignJwtResponse>, Status>
pub async fn sign_jwt( &mut self, request: impl IntoRequest<SignJwtRequest>, ) -> Result<Response<SignJwtResponse>, Status>
Signs a JWT using a service account’s system-managed private key.
Trait Implementations§
source§impl<T: Clone> Clone for IamCredentialsClient<T>
impl<T: Clone> Clone for IamCredentialsClient<T>
source§fn clone(&self) -> IamCredentialsClient<T>
fn clone(&self) -> IamCredentialsClient<T>
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl<T> !Freeze for IamCredentialsClient<T>
impl<T> RefUnwindSafe for IamCredentialsClient<T>where
T: RefUnwindSafe,
impl<T> Send for IamCredentialsClient<T>where
T: Send,
impl<T> Sync for IamCredentialsClient<T>where
T: Sync,
impl<T> Unpin for IamCredentialsClient<T>where
T: Unpin,
impl<T> UnwindSafe for IamCredentialsClient<T>where
T: UnwindSafe,
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request