Class CfnReplicaKeyPropsMixin
- All Implemented Interfaces:
IMixin,software.amazon.jsii.JsiiSerializable
AWS::KMS::ReplicaKey resource specifies a multi-Region replica key that is based on a multi-Region primary key.
Multi-Region keys are an AWS feature that lets you create multiple interoperable KMS keys in different AWS Regions . Because these KMS keys have the same key ID, key material, and other metadata, you can use them to encrypt data in one AWS Region and decrypt it in a different AWS Region without making a cross-Region call or exposing the plaintext data. For more information, see Multi-Region keys in the AWS Key Management Service Developer Guide .
A multi-Region primary key is a fully functional symmetric encryption KMS key, HMAC KMS key, or asymmetric KMS key that is also the model for replica keys in other AWS Regions . To create a multi-Region primary key, add an AWS::KMS::Key resource to your CloudFormation stack. Set its MultiRegion property to true.
A multi-Region replica key is a fully functional KMS key that has the same key ID and key material as a multi-Region primary key, but is located in a different AWS Region of the same AWS partition. There can be multiple replicas of a primary key, but each must be in a different AWS Region .
When you create a replica key in CloudFormation , the replica key is created in the AWS Region represented by the endpoint you use for the request. If you try to replicate a multi-Region key into a Region in which the key type is not supported, the request will fail.
A primary key and its replicas have the same key ID and key material. They also have the same key spec, key usage, key material origin, and automatic key rotation status. These properties are known as shared properties . If they change, AWS synchronizes the change to all related multi-Region keys. All other properties of a replica key can differ, including its key policy, tags, aliases, and key state. AWS does not synchronize these properties.
Regions
AWS CloudFormation resources are available in all AWS Regions in which AWS and CloudFormation are supported. You can use the AWS::KMS::ReplicaKey resource to create replica keys in all Regions that support multi-Region KMS keys. For details, see Multi-Region keys in AWS in the ** .
Example:
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import software.amazon.awscdk.mixins.preview.mixins.*;
import software.amazon.awscdk.mixins.preview.services.kms.mixins.*;
Object keyPolicy;
CfnReplicaKeyPropsMixin cfnReplicaKeyPropsMixin = CfnReplicaKeyPropsMixin.Builder.create(CfnReplicaKeyMixinProps.builder()
.description("description")
.enabled(false)
.keyPolicy(keyPolicy)
.pendingWindowInDays(123)
.primaryKeyArn("primaryKeyArn")
.tags(List.of(CfnTag.builder()
.key("key")
.value("value")
.build()))
.build())
.strategy(PropertyMergeStrategy.OVERRIDE)
.build();
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final classA fluent builder forCfnReplicaKeyPropsMixin.Nested classes/interfaces inherited from class software.amazon.jsii.JsiiObject
software.amazon.jsii.JsiiObject.InitializationModeNested classes/interfaces inherited from interface software.amazon.awscdk.mixins.preview.core.IMixin
IMixin.Jsii$Default, IMixin.Jsii$Proxy -
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionCreate a mixin to apply properties toAWS::KMS::ReplicaKey.CfnReplicaKeyPropsMixin(CfnReplicaKeyMixinProps props, CfnPropertyMixinOptions options) Create a mixin to apply properties toAWS::KMS::ReplicaKey.protectedCfnReplicaKeyPropsMixin(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) protectedCfnReplicaKeyPropsMixin(software.amazon.jsii.JsiiObjectRef objRef) -
Method Summary
Modifier and TypeMethodDescriptionsoftware.constructs.IConstructapplyTo(software.constructs.IConstruct construct) Apply the mixin properties to the construct.protected CfnReplicaKeyMixinPropsgetProps()protected PropertyMergeStrategysupports(software.constructs.IConstruct construct) Check if this mixin supports the given construct.Methods inherited from class software.amazon.jsii.JsiiObject
jsiiAsyncCall, jsiiAsyncCall, jsiiCall, jsiiCall, jsiiGet, jsiiGet, jsiiSet, jsiiStaticCall, jsiiStaticCall, jsiiStaticGet, jsiiStaticGet, jsiiStaticSet, jsiiStaticSetMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Field Details
-
CFN_PROPERTY_KEYS
-
-
Constructor Details
-
CfnReplicaKeyPropsMixin
protected CfnReplicaKeyPropsMixin(software.amazon.jsii.JsiiObjectRef objRef) -
CfnReplicaKeyPropsMixin
protected CfnReplicaKeyPropsMixin(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) -
CfnReplicaKeyPropsMixin
@Stability(Stable) public CfnReplicaKeyPropsMixin(@NotNull CfnReplicaKeyMixinProps props, @Nullable CfnPropertyMixinOptions options) Create a mixin to apply properties toAWS::KMS::ReplicaKey.- Parameters:
props- L1 properties to apply. This parameter is required.options- Mixin options.
-
CfnReplicaKeyPropsMixin
Create a mixin to apply properties toAWS::KMS::ReplicaKey.- Parameters:
props- L1 properties to apply. This parameter is required.
-
-
Method Details
-
applyTo
@Stability(Stable) @NotNull public software.constructs.IConstruct applyTo(@NotNull software.constructs.IConstruct construct) Apply the mixin properties to the construct. -
supports
@Stability(Stable) @NotNull public Boolean supports(@NotNull software.constructs.IConstruct construct) Check if this mixin supports the given construct. -
getProps
-
getStrategy
-