awscdk-resources-mongodbatlas
Version:
MongoDB Atlas CDK Construct Library for AWS CloudFormation Resources
63 lines • 8.73 kB
JavaScript
var _a;
Object.defineProperty(exports, "__esModule", { value: true });
exports.AtlasEncryptionAtRest = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
// Copyright 2023 MongoDB Inc
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
const constructs_1 = require("constructs");
const index_1 = require("../../index");
const US_EAST_1 = "US_EAST_1";
/**
* It throws an error if any of the required properties are not defined
* @param {AtlasEncryptionAtRestProps} props - AtlasEncryptionAtRestProps
*/
const validate = (props) => {
if (!props.projectId) {
throw Error("Validation error: projectId is not defined");
}
if (!props.customerMasterKeyId) {
throw Error("Validation error: customerMasterKeyId is not defined");
}
if (!props.roleId) {
throw Error("Validation error: roleId is not defined");
}
};
/**
*
*
* @export
* @class AtlasEncryptionAtRest
* @extends {Construct}
*/
class AtlasEncryptionAtRest extends constructs_1.Construct {
constructor(scope, id, props) {
super(scope, id);
validate(props);
this.cfnEncryptionAtRest = new index_1.CfnEncryptionAtRest(this, "AtlasEncryptionAtRest", {
awsKmsConfig: {
enabled: props.enabled == undefined ? true : props.enabled,
region: !props.region ? US_EAST_1 : props.region,
roleId: props.roleId,
customerMasterKeyId: props.customerMasterKeyId,
},
profile: props.profile,
projectId: props.projectId,
});
}
}
exports.AtlasEncryptionAtRest = AtlasEncryptionAtRest;
_a = JSII_RTTI_SYMBOL_1;
AtlasEncryptionAtRest[_a] = { fqn: "awscdk-resources-mongodbatlas.AtlasEncryptionAtRest", version: "3.13.0" };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDItcmVzb3VyY2VzL2VuY3J5cHRpb24tYXQtcmVzdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZCQUE2QjtBQUM3QixFQUFFO0FBQ0Ysa0VBQWtFO0FBQ2xFLG1FQUFtRTtBQUNuRSwwQ0FBMEM7QUFDMUMsRUFBRTtBQUNGLGtEQUFrRDtBQUNsRCxFQUFFO0FBQ0Ysc0VBQXNFO0FBQ3RFLG9FQUFvRTtBQUNwRSwyRUFBMkU7QUFDM0Usc0VBQXNFO0FBQ3RFLGlDQUFpQztBQUVqQywyQ0FBdUM7QUFDdkMsdUNBQWtEO0FBRWxELE1BQU0sU0FBUyxHQUFHLFdBQVcsQ0FBQztBQTRDOUI7OztHQUdHO0FBQ0gsTUFBTSxRQUFRLEdBQUcsQ0FBQyxLQUFpQyxFQUFFLEVBQUU7SUFDckQsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNyQixNQUFNLEtBQUssQ0FBQyw0Q0FBNEMsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxJQUFJLENBQUMsS0FBSyxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFDL0IsTUFBTSxLQUFLLENBQUMsc0RBQXNELENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRUQsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNsQixNQUFNLEtBQUssQ0FBQyx5Q0FBeUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7QUFDSCxDQUFDLENBQUM7QUFFRjs7Ozs7O0dBTUc7QUFDSCxNQUFhLHFCQUFzQixTQUFRLHNCQUFTO0lBU2xELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBaUM7UUFDekUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEIsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksMkJBQW1CLENBQ2hELElBQUksRUFDSix1QkFBdUIsRUFDdkI7WUFDRSxZQUFZLEVBQUU7Z0JBQ1osT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPLElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPO2dCQUMxRCxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNO2dCQUNoRCxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07Z0JBQ3BCLG1CQUFtQixFQUFFLEtBQUssQ0FBQyxtQkFBbUI7YUFDL0M7WUFDRCxPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87WUFDdEIsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTO1NBQzNCLENBQ0YsQ0FBQztJQUNKLENBQUM7O0FBM0JILHNEQTRCQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDIzIE1vbmdvREIgSW5jXG4vL1xuLy8gTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbi8vIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbi8vIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuLy9cbi8vICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4vL1xuLy8gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuLy8gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuLy8gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4vLyBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4vLyBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cblxuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IENmbkVuY3J5cHRpb25BdFJlc3QgfSBmcm9tIFwiLi4vLi4vaW5kZXhcIjtcblxuY29uc3QgVVNfRUFTVF8xID0gXCJVU19FQVNUXzFcIjtcblxuZXhwb3J0IGludGVyZmFjZSBBdGxhc0VuY3J5cHRpb25BdFJlc3RQcm9wcyB7XG4gIC8qKlxuICAgKiBJRCBvZiBhbiBBV1MgSUFNIHJvbGUgYXV0aG9yaXplZCB0byBtYW5hZ2UgYW4gQVdTIGN1c3RvbWVyIG1hc3RlciBrZXkuXG4gICAqXG4gICAqIEBzY2hlbWEgQXdzS21zI1JvbGVJRFxuICAgKi9cbiAgcmVhZG9ubHkgcm9sZUlkOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgQVdTIGN1c3RvbWVyIG1hc3RlciBrZXkgdXNlZCB0byBlbmNyeXB0IGFuZCBkZWNyeXB0IHRoZSBNb25nb0RCIG1hc3RlciBrZXlzLlxuICAgKlxuICAgKiBAc2NoZW1hIEF3c0ttcyNDdXN0b21lck1hc3RlcktleUlEXG4gICAqL1xuICByZWFkb25seSBjdXN0b21lck1hc3RlcktleUlkOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgd2hldGhlciBFbmNyeXB0aW9uIGF0IFJlc3QgaXMgZW5hYmxlZCBmb3IgYW4gQXRsYXMgcHJvamVjdC4gVG8gZGlzYWJsZSBFbmNyeXB0aW9uIGF0IFJlc3QsIHBhc3Mgb25seSB0aGlzIHBhcmFtZXRlciB3aXRoIGEgdmFsdWUgb2YgZmFsc2UuIFdoZW4geW91IGRpc2FibGUgRW5jcnlwdGlvbiBhdCBSZXN0LCBBdGxhcyBhbHNvIHJlbW92ZXMgdGhlIGNvbmZpZ3VyYXRpb24gZGV0YWlscy5cbiAgICogRGVmYXVsdCBWYWx1ZTogdHJ1ZVxuICAgKiBAc2NoZW1hIEF3c0ttcyNFbmFibGVkXG4gICAqL1xuICByZWFkb25seSBlbmFibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSBBV1MgcmVnaW9uIGluIHdoaWNoIHRoZSBBV1MgY3VzdG9tZXIgbWFzdGVyIGtleSBleGlzdHMuXG4gICAqIERlZmF1bHQgVmFsdWU6IFVTX0VBU1RfMVxuICAgKiBAc2NoZW1hIEF3c0ttcyNSZWdpb25cbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblxuICAvKipcbiAgICogVW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIEF0bGFzIHByb2plY3QgdG8gd2hpY2ggdGhlIHVzZXIgYmVsb25ncy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5FbmNyeXB0aW9uQXRSZXN0UHJvcHMjUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHByb2ZpbGUgaXMgZGVmaW5lZCBpbiBBV1MgU2VjcmV0IG1hbmFnZXIuXG4gICAqIFNlZSBbU2VjcmV0IE1hbmFnZXIgUHJvZmlsZSBzZXR1cF0oLi4vLi4vLi4vZXhhbXBsZXMvcHJvZmlsZS1zZWNyZXQueWFtbCkuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRW5jcnlwdGlvbkF0UmVzdFByb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogSXQgdGhyb3dzIGFuIGVycm9yIGlmIGFueSBvZiB0aGUgcmVxdWlyZWQgcHJvcGVydGllcyBhcmUgbm90IGRlZmluZWRcbiAqIEBwYXJhbSB7QXRsYXNFbmNyeXB0aW9uQXRSZXN0UHJvcHN9IHByb3BzIC0gQXRsYXNFbmNyeXB0aW9uQXRSZXN0UHJvcHNcbiAqL1xuY29uc3QgdmFsaWRhdGUgPSAocHJvcHM6IEF0bGFzRW5jcnlwdGlvbkF0UmVzdFByb3BzKSA9PiB7XG4gIGlmICghcHJvcHMucHJvamVjdElkKSB7XG4gICAgdGhyb3cgRXJyb3IoXCJWYWxpZGF0aW9uIGVycm9yOiBwcm9qZWN0SWQgaXMgbm90IGRlZmluZWRcIik7XG4gIH1cblxuICBpZiAoIXByb3BzLmN1c3RvbWVyTWFzdGVyS2V5SWQpIHtcbiAgICB0aHJvdyBFcnJvcihcIlZhbGlkYXRpb24gZXJyb3I6IGN1c3RvbWVyTWFzdGVyS2V5SWQgaXMgbm90IGRlZmluZWRcIik7XG4gIH1cblxuICBpZiAoIXByb3BzLnJvbGVJZCkge1xuICAgIHRocm93IEVycm9yKFwiVmFsaWRhdGlvbiBlcnJvcjogcm9sZUlkIGlzIG5vdCBkZWZpbmVkXCIpO1xuICB9XG59O1xuXG4vKipcbiAqXG4gKlxuICogQGV4cG9ydFxuICogQGNsYXNzIEF0bGFzRW5jcnlwdGlvbkF0UmVzdFxuICogQGV4dGVuZHMge0NvbnN0cnVjdH1cbiAqL1xuZXhwb3J0IGNsYXNzIEF0bGFzRW5jcnlwdGlvbkF0UmVzdCBleHRlbmRzIENvbnN0cnVjdCB7XG4gIC8qKlxuICAgKlxuICAgKlxuICAgKiBAdHlwZSB7Q2ZuRW5jcnlwdGlvbkF0UmVzdH1cbiAgICogQG1lbWJlcm9mIEF0bGFzRW5jcnlwdGlvbkF0UmVzdFxuICAgKi9cbiAgcmVhZG9ubHkgY2ZuRW5jcnlwdGlvbkF0UmVzdDogQ2ZuRW5jcnlwdGlvbkF0UmVzdDtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQXRsYXNFbmNyeXB0aW9uQXRSZXN0UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgdmFsaWRhdGUocHJvcHMpO1xuICAgIHRoaXMuY2ZuRW5jcnlwdGlvbkF0UmVzdCA9IG5ldyBDZm5FbmNyeXB0aW9uQXRSZXN0KFxuICAgICAgdGhpcyxcbiAgICAgIFwiQXRsYXNFbmNyeXB0aW9uQXRSZXN0XCIsXG4gICAgICB7XG4gICAgICAgIGF3c0ttc0NvbmZpZzoge1xuICAgICAgICAgIGVuYWJsZWQ6IHByb3BzLmVuYWJsZWQgPT0gdW5kZWZpbmVkID8gdHJ1ZSA6IHByb3BzLmVuYWJsZWQsXG4gICAgICAgICAgcmVnaW9uOiAhcHJvcHMucmVnaW9uID8gVVNfRUFTVF8xIDogcHJvcHMucmVnaW9uLFxuICAgICAgICAgIHJvbGVJZDogcHJvcHMucm9sZUlkLFxuICAgICAgICAgIGN1c3RvbWVyTWFzdGVyS2V5SWQ6IHByb3BzLmN1c3RvbWVyTWFzdGVyS2V5SWQsXG4gICAgICAgIH0sXG4gICAgICAgIHByb2ZpbGU6IHByb3BzLnByb2ZpbGUsXG4gICAgICAgIHByb2plY3RJZDogcHJvcHMucHJvamVjdElkLFxuICAgICAgfVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
;