the-ldk
Version:
Welcome to the LDK! A collection of custom AWS CDK constructs to help you build serverless applications faster.
27 lines • 1.06 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.IAMUser = void 0;
const aws_iam_1 = require("aws-cdk-lib/aws-iam");
const constructs_1 = require("constructs");
class IAMUser extends constructs_1.Construct {
constructor(scope, id, props) {
super(scope, id);
const { stage, userName = `ldkUser-${stage}`, policyStatement, generateAccessKeys = true, customUserOptions = {}, } = props;
const ldkUser = new aws_iam_1.User(this, `iam-user-${id}-${stage}`, {
userName,
...customUserOptions,
});
if (policyStatement) {
ldkUser.addToPolicy(policyStatement);
}
if (generateAccessKeys) {
const calendarUserAccessKey = new aws_iam_1.CfnAccessKey(this, `${ldkUser.userName}-access-key-${id}-${stage}`, {
userName: ldkUser.userName,
});
this.iamUserAccessKey = calendarUserAccessKey;
}
this.iamUser = ldkUser;
}
}
exports.IAMUser = IAMUser;
//# sourceMappingURL=User.js.map