#[non_exhaustive]pub struct CopyBackupEncryptionConfig {
pub encryption_type: EncryptionType,
pub kms_key_name: String,
pub kms_key_names: Vec<String>,
/* private fields */
}Expand description
Encryption configuration for the copied backup.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.encryption_type: EncryptionTypeRequired. The encryption type of the backup.
kms_key_name: StringOptional. The Cloud KMS key that will be used to protect the backup.
This field should be set only when
encryption_type
is CUSTOMER_MANAGED_ENCRYPTION. Values are of the form
projects/<project>/locations/<location>/keyRings/<key_ring>/cryptoKeys/<kms_key_name>.
kms_key_names: Vec<String>Optional. Specifies the KMS configuration for the one or more keys used to
protect the backup. Values are of the form
projects/<project>/locations/<location>/keyRings/<key_ring>/cryptoKeys/<kms_key_name>.
Kms keys specified can be in any order.
The keys referenced by kms_key_names must fully cover all regions of the backup’s instance configuration. Some examples:
- For single region instance configs, specify a single regional location KMS key.
- For multi-regional instance configs of type GOOGLE_MANAGED, either specify a multi-regional location KMS key or multiple regional location KMS keys that cover all regions in the instance config.
- For an instance config of type USER_MANAGED, please specify only regional location KMS keys to cover each region in the instance config. Multi-regional location KMS keys are not supported for USER_MANAGED instance configs.
Implementations§
Source§impl CopyBackupEncryptionConfig
impl CopyBackupEncryptionConfig
Sourcepub fn set_encryption_type<T: Into<EncryptionType>>(self, v: T) -> Self
pub fn set_encryption_type<T: Into<EncryptionType>>(self, v: T) -> Self
Sets the value of encryption_type.
§Example
use google_cloud_spanner_admin_database_v1::model::copy_backup_encryption_config::EncryptionType;
let x0 = CopyBackupEncryptionConfig::new().set_encryption_type(EncryptionType::UseConfigDefaultOrBackupEncryption);
let x1 = CopyBackupEncryptionConfig::new().set_encryption_type(EncryptionType::GoogleDefaultEncryption);
let x2 = CopyBackupEncryptionConfig::new().set_encryption_type(EncryptionType::CustomerManagedEncryption);Sourcepub fn set_kms_key_name<T: Into<String>>(self, v: T) -> Self
pub fn set_kms_key_name<T: Into<String>>(self, v: T) -> Self
Sets the value of kms_key_name.
§Example
let x = CopyBackupEncryptionConfig::new().set_kms_key_name("example");Sourcepub fn set_kms_key_names<T, V>(self, v: T) -> Self
pub fn set_kms_key_names<T, V>(self, v: T) -> Self
Sets the value of kms_key_names.
§Example
let x = CopyBackupEncryptionConfig::new().set_kms_key_names(["a", "b", "c"]);Trait Implementations§
Source§impl Clone for CopyBackupEncryptionConfig
impl Clone for CopyBackupEncryptionConfig
Source§fn clone(&self) -> CopyBackupEncryptionConfig
fn clone(&self) -> CopyBackupEncryptionConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for CopyBackupEncryptionConfig
impl Debug for CopyBackupEncryptionConfig
Source§impl Default for CopyBackupEncryptionConfig
impl Default for CopyBackupEncryptionConfig
Source§fn default() -> CopyBackupEncryptionConfig
fn default() -> CopyBackupEncryptionConfig
Source§impl Message for CopyBackupEncryptionConfig
impl Message for CopyBackupEncryptionConfig
impl StructuralPartialEq for CopyBackupEncryptionConfig
Auto Trait Implementations§
impl Freeze for CopyBackupEncryptionConfig
impl RefUnwindSafe for CopyBackupEncryptionConfig
impl Send for CopyBackupEncryptionConfig
impl Sync for CopyBackupEncryptionConfig
impl Unpin for CopyBackupEncryptionConfig
impl UnsafeUnpin for CopyBackupEncryptionConfig
impl UnwindSafe for CopyBackupEncryptionConfig
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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> 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