#[non_exhaustive]pub struct CreateAwsKmsHierarchicalKeyringInput {
pub branch_key_id: Option<String>,
pub branch_key_id_supplier: Option<BranchKeyIdSupplierRef>,
pub cache: Option<CacheType>,
pub key_store: Option<Client>,
pub partition_id: Option<String>,
pub ttl_seconds: Option<i64>,
}
Expand description
Inputs for creating a Hierarchical Keyring.
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.branch_key_id: Option<String>
The identifier for the single Branch Key responsible for wrapping and unwrapping the data key. Either a Branch Key ID or Branch Key Supplier must be specified.
branch_key_id_supplier: Option<BranchKeyIdSupplierRef>
A Branch Key Supplier which determines what Branch Key to use to wrap and unwrap the data key. Either a Branch Key ID or Branch Key Supplier must be specified.
cache: Option<CacheType>
Sets the type of cache for this Hierarchical Keyring. By providing an already initialized ‘Shared’ cache, users can determine the scope of the cache. That is, if the cache is shared across other Cryptographic Material Providers, for instance other Hierarchical Keyrings or Caching Cryptographic Materials Managers (Caching CMMs). If any other type of cache in the CacheType union is provided, the Hierarchical Keyring will initialize a cache of that type, to be used with only this Hierarchical Keyring. If not set, a DefaultCache is initialized to be used with only this Hierarchical Keyring with entryCapacity = 1000.
key_store: Option<Client>
The Key Store which contains the Branch Key(s) responsible for wrapping and unwrapping data keys.
partition_id: Option<String>
Partition ID to distinguish Cryptographic Material Providers (i.e: Keyrings) writing to a cache. If the Partition ID is the same for two Hierarchical Keyrings (or another Material Provider), they can share the same cache entries in the cache.
ttl_seconds: Option<i64>
How many seconds the Branch Key material is allowed to be reused within the local cache before it is re-retrieved from Amazon DynamoDB and re-authenticated with AWS KMS.
Implementations§
Source§impl CreateAwsKmsHierarchicalKeyringInput
impl CreateAwsKmsHierarchicalKeyringInput
Sourcepub fn branch_key_id(&self) -> &Option<String>
pub fn branch_key_id(&self) -> &Option<String>
The identifier for the single Branch Key responsible for wrapping and unwrapping the data key. Either a Branch Key ID or Branch Key Supplier must be specified.
Sourcepub fn branch_key_id_supplier(&self) -> &Option<BranchKeyIdSupplierRef>
pub fn branch_key_id_supplier(&self) -> &Option<BranchKeyIdSupplierRef>
A Branch Key Supplier which determines what Branch Key to use to wrap and unwrap the data key. Either a Branch Key ID or Branch Key Supplier must be specified.
Sourcepub fn cache(&self) -> &Option<CacheType>
pub fn cache(&self) -> &Option<CacheType>
Sets the type of cache for this Hierarchical Keyring. By providing an already initialized ‘Shared’ cache, users can determine the scope of the cache. That is, if the cache is shared across other Cryptographic Material Providers, for instance other Hierarchical Keyrings or Caching Cryptographic Materials Managers (Caching CMMs). If any other type of cache in the CacheType union is provided, the Hierarchical Keyring will initialize a cache of that type, to be used with only this Hierarchical Keyring. If not set, a DefaultCache is initialized to be used with only this Hierarchical Keyring with entryCapacity = 1000.
Sourcepub fn key_store(&self) -> &Option<Client>
pub fn key_store(&self) -> &Option<Client>
The Key Store which contains the Branch Key(s) responsible for wrapping and unwrapping data keys.
Sourcepub fn partition_id(&self) -> &Option<String>
pub fn partition_id(&self) -> &Option<String>
Partition ID to distinguish Cryptographic Material Providers (i.e: Keyrings) writing to a cache. If the Partition ID is the same for two Hierarchical Keyrings (or another Material Provider), they can share the same cache entries in the cache.
Sourcepub fn ttl_seconds(&self) -> &Option<i64>
pub fn ttl_seconds(&self) -> &Option<i64>
How many seconds the Branch Key material is allowed to be reused within the local cache before it is re-retrieved from Amazon DynamoDB and re-authenticated with AWS KMS.
Source§impl CreateAwsKmsHierarchicalKeyringInput
impl CreateAwsKmsHierarchicalKeyringInput
Sourcepub fn builder() -> CreateAwsKmsHierarchicalKeyringInputBuilder
pub fn builder() -> CreateAwsKmsHierarchicalKeyringInputBuilder
Creates a new builder-style object to manufacture CreateAwsKmsHierarchicalKeyringInput
.
Trait Implementations§
Source§impl Clone for CreateAwsKmsHierarchicalKeyringInput
impl Clone for CreateAwsKmsHierarchicalKeyringInput
Source§fn clone(&self) -> CreateAwsKmsHierarchicalKeyringInput
fn clone(&self) -> CreateAwsKmsHierarchicalKeyringInput
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl PartialEq for CreateAwsKmsHierarchicalKeyringInput
impl PartialEq for CreateAwsKmsHierarchicalKeyringInput
Source§fn eq(&self, other: &CreateAwsKmsHierarchicalKeyringInput) -> bool
fn eq(&self, other: &CreateAwsKmsHierarchicalKeyringInput) -> bool
self
and other
values to be equal, and is used by ==
.impl StructuralPartialEq for CreateAwsKmsHierarchicalKeyringInput
Auto Trait Implementations§
impl Freeze for CreateAwsKmsHierarchicalKeyringInput
impl !RefUnwindSafe for CreateAwsKmsHierarchicalKeyringInput
impl Send for CreateAwsKmsHierarchicalKeyringInput
impl Sync for CreateAwsKmsHierarchicalKeyringInput
impl Unpin for CreateAwsKmsHierarchicalKeyringInput
impl !UnwindSafe for CreateAwsKmsHierarchicalKeyringInput
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§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> 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