awscdk-resources-mongodbatlas
Version:
MongoDB Atlas CDK Construct Library for AWS CloudFormation Resources
93 lines (92 loc) • 3.11 kB
TypeScript
import * as cdk from "aws-cdk-lib";
import * as constructs from "constructs";
/**
* Returns and edits the Encryption at Rest using Customer Key Management configuration.
*
* @schema CfnEncryptionAtRestProps
*/
export interface CfnEncryptionAtRestProps {
/**
* @schema CfnEncryptionAtRestProps#AwsKmsConfig
*/
readonly awsKmsConfig: AwsKmsConfig;
/**
* The profile is defined in AWS Secret manager. See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
*
* @schema CfnEncryptionAtRestProps#Profile
*/
readonly profile?: string;
/**
* Unique identifier of the Atlas project to which the user belongs.
*
* @schema CfnEncryptionAtRestProps#ProjectId
*/
readonly projectId: string;
}
/**
* Converts an object of type 'CfnEncryptionAtRestProps' to JSON representation.
*/
export declare function toJson_CfnEncryptionAtRestProps(obj: CfnEncryptionAtRestProps | undefined): Record<string, any> | undefined;
/**
* Specifies AWS KMS configuration details and whether Encryption at Rest is enabled for an Atlas project.
*
* @schema AwsKmsConfig
*/
export interface AwsKmsConfig {
/**
* ID of an AWS IAM role authorized to manage an AWS customer master key.
*
* @schema AwsKmsConfig#RoleID
*/
readonly roleId?: string;
/**
* The AWS customer master key used to encrypt and decrypt the MongoDB master keys.
*
* @schema AwsKmsConfig#CustomerMasterKeyID
*/
readonly customerMasterKeyId?: string;
/**
* Specifies whether Encryption at Rest is enabled for an Atlas project. To disable Encryption at Rest, pass only this parameter with a value of false. When you disable Encryption at Rest, Atlas also removes the configuration details.
*
* @schema AwsKmsConfig#Enabled
*/
readonly enabled?: boolean;
/**
* The AWS region in which the AWS customer master key exists.
*
* @schema AwsKmsConfig#Region
*/
readonly region?: string;
}
/**
* Converts an object of type 'AwsKmsConfig' to JSON representation.
*/
export declare function toJson_AwsKmsConfig(obj: AwsKmsConfig | undefined): Record<string, any> | undefined;
/**
* A CloudFormation `MongoDB::Atlas::EncryptionAtRest`
*
* @cloudformationResource MongoDB::Atlas::EncryptionAtRest
* @stability external
*/
export declare class CfnEncryptionAtRest extends cdk.CfnResource {
/**
* The CloudFormation resource type name for this resource class.
*/
static readonly CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::EncryptionAtRest";
/**
* Resource props.
*/
readonly props: CfnEncryptionAtRestProps;
/**
* Attribute `MongoDB::Atlas::EncryptionAtRest.Id`
*/
readonly attrId: string;
/**
* Create a new `MongoDB::Atlas::EncryptionAtRest`.
*
* @param scope - scope in which this resource is defined
* @param id - scoped id of the resource
* @param props - resource properties
*/
constructor(scope: constructs.Construct, id: string, props: CfnEncryptionAtRestProps);
}