Struct google_api_proto::google::cloud::kms::v1::autokey_client::AutokeyClient
source · pub struct AutokeyClient<T> { /* private fields */ }
Expand description
Provides interfaces for using Cloud KMS Autokey to provision new [CryptoKeys][google.cloud.kms.v1.CryptoKey], ready for Customer Managed Encryption Key (CMEK) use, on-demand. To support certain client tooling, this feature is modeled around a [KeyHandle][google.cloud.kms.v1.KeyHandle] resource: creating a [KeyHandle][google.cloud.kms.v1.KeyHandle] in a resource project and given location triggers Cloud KMS Autokey to provision a [CryptoKey][google.cloud.kms.v1.CryptoKey] in the configured key project and the same location.
Prior to use in a given resource project, [UpdateAutokeyConfig][google.cloud.kms.v1.AutokeyAdmin.UpdateAutokeyConfig] should have been called on an ancestor folder, setting the key project where Cloud KMS Autokey should create new [CryptoKeys][google.cloud.kms.v1.CryptoKey]. See documentation for additional prerequisites. To check what key project, if any, is currently configured on a resource project’s ancestor folder, see [ShowEffectiveAutokeyConfig][google.cloud.kms.v1.AutokeyAdmin.ShowEffectiveAutokeyConfig].
Implementations§
source§impl<T> AutokeyClient<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> AutokeyClient<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,
) -> AutokeyClient<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 create_key_handle(
&mut self,
request: impl IntoRequest<CreateKeyHandleRequest>,
) -> Result<Response<Operation>, Status>
pub async fn create_key_handle( &mut self, request: impl IntoRequest<CreateKeyHandleRequest>, ) -> Result<Response<Operation>, Status>
Creates a new [KeyHandle][google.cloud.kms.v1.KeyHandle], triggering the provisioning of a new [CryptoKey][google.cloud.kms.v1.CryptoKey] for CMEK use with the given resource type in the configured key project and the same location. [GetOperation][Operations.GetOperation] should be used to resolve the resulting long-running operation and get the resulting [KeyHandle][google.cloud.kms.v1.KeyHandle] and [CryptoKey][google.cloud.kms.v1.CryptoKey].
sourcepub async fn get_key_handle(
&mut self,
request: impl IntoRequest<GetKeyHandleRequest>,
) -> Result<Response<KeyHandle>, Status>
pub async fn get_key_handle( &mut self, request: impl IntoRequest<GetKeyHandleRequest>, ) -> Result<Response<KeyHandle>, Status>
Returns the [KeyHandle][google.cloud.kms.v1.KeyHandle].
sourcepub async fn list_key_handles(
&mut self,
request: impl IntoRequest<ListKeyHandlesRequest>,
) -> Result<Response<ListKeyHandlesResponse>, Status>
pub async fn list_key_handles( &mut self, request: impl IntoRequest<ListKeyHandlesRequest>, ) -> Result<Response<ListKeyHandlesResponse>, Status>
Lists [KeyHandles][google.cloud.kms.v1.KeyHandle].
Trait Implementations§
source§impl<T: Clone> Clone for AutokeyClient<T>
impl<T: Clone> Clone for AutokeyClient<T>
source§fn clone(&self) -> AutokeyClient<T>
fn clone(&self) -> AutokeyClient<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 AutokeyClient<T>
impl<T> RefUnwindSafe for AutokeyClient<T>where
T: RefUnwindSafe,
impl<T> Send for AutokeyClient<T>where
T: Send,
impl<T> Sync for AutokeyClient<T>where
T: Sync,
impl<T> Unpin for AutokeyClient<T>where
T: Unpin,
impl<T> UnwindSafe for AutokeyClient<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