UNPKG

cdk-iam-floyd

Version:

AWS IAM policy statement generator with fluent interface for AWS CDK

106 lines 9.39 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Freetier = void 0; const shared_1 = require("../../shared"); /** * Statement provider for service [freetier](https://docs.aws.amazon.com/service-authorization/latest/reference/list_freetier.html). * * @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement */ class Freetier extends shared_1.PolicyStatement { /** * Grants permission to get a specific activity record * * Access Level: Read * * https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_freetier_GetAccountActivity.html */ toGetAccountActivity() { return this.to('GetAccountActivity'); } /** * Grants permission to get all of the information related to the state of the account plan related to Free Tier * * Access Level: Read * * https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_freetier_GetAccountPlanState.html */ toGetAccountPlanState() { return this.to('GetAccountPlanState'); } /** * Grants permission to get free tier usage limits and MTD usage status * * Access Level: Read * * https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/tracking-free-tier-usage.html */ toGetFreeTierUsage() { return this.to('GetFreeTierUsage'); } /** * Grants permission to list available activities * * Access Level: List * * https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_freetier_ListAccountActivities.html */ toListAccountActivities() { return this.to('ListAccountActivities'); } /** * Grants permission to trigger an upgrade of account plan * * Access Level: Write * * https://docs.aws.amazon.com/aws-cost-management/latest/APIReference/API_freetier_UpgradeAccountPlan.html */ toUpgradeAccountPlan() { return this.to('UpgradeAccountPlan'); } /** * Grants permission to get free tier alert preference (email address) * * Access Level: Read * * https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/tracking-free-tier-usage.html */ toGetFreeTierAlertPreference() { return this.to('GetFreeTierAlertPreference'); } /** * Grants permission to set free tier alert preference (email address) * * Access Level: Write * * https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/tracking-free-tier-usage.html */ toPutFreeTierAlertPreference() { return this.to('PutFreeTierAlertPreference'); } /** * Statement provider for service [freetier](https://docs.aws.amazon.com/service-authorization/latest/reference/list_freetier.html). * */ constructor(props) { super(props); this.servicePrefix = 'freetier'; this.accessLevelList = { Read: [ 'GetAccountActivity', 'GetAccountPlanState', 'GetFreeTierUsage', 'GetFreeTierAlertPreference' ], List: [ 'ListAccountActivities' ], Write: [ 'UpgradeAccountPlan', 'PutFreeTierAlertPreference' ] }; } } exports.Freetier = Freetier; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJlZXRpZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJmcmVldGllci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSx5Q0FBK0M7QUFHL0M7Ozs7R0FJRztBQUNILE1BQWEsUUFBUyxTQUFRLHdCQUFlO0lBRzNDOzs7Ozs7T0FNRztJQUNJLG9CQUFvQjtRQUN6QixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0kscUJBQXFCO1FBQzFCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxrQkFBa0I7UUFDdkIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLHVCQUF1QjtRQUM1QixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksb0JBQW9CO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSw0QkFBNEI7UUFDakMsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLDRCQUE0QixDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLDRCQUE0QjtRQUNqQyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsNEJBQTRCLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBa0JEOzs7T0FHRztJQUNILFlBQVksS0FBZ0M7UUFDMUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBcEdSLGtCQUFhLEdBQUcsVUFBVSxDQUFDO1FBK0V4QixvQkFBZSxHQUFvQjtZQUMzQyxJQUFJLEVBQUU7Z0JBQ0osb0JBQW9CO2dCQUNwQixxQkFBcUI7Z0JBQ3JCLGtCQUFrQjtnQkFDbEIsNEJBQTRCO2FBQzdCO1lBQ0QsSUFBSSxFQUFFO2dCQUNKLHVCQUF1QjthQUN4QjtZQUNELEtBQUssRUFBRTtnQkFDTCxvQkFBb0I7Z0JBQ3BCLDRCQUE0QjthQUM3QjtTQUNGLENBQUM7SUFRRixDQUFDO0NBQ0Y7QUF2R0QsNEJBdUdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWNjZXNzTGV2ZWxMaXN0IH0gZnJvbSAnLi4vLi4vc2hhcmVkL2FjY2Vzcy1sZXZlbCc7XG5pbXBvcnQgeyBQb2xpY3lTdGF0ZW1lbnQgfSBmcm9tICcuLi8uLi9zaGFyZWQnO1xuaW1wb3J0IHsgYXdzX2lhbSBhcyBpYW0gfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcblxuLyoqXG4gKiBTdGF0ZW1lbnQgcHJvdmlkZXIgZm9yIHNlcnZpY2UgW2ZyZWV0aWVyXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vc2VydmljZS1hdXRob3JpemF0aW9uL2xhdGVzdC9yZWZlcmVuY2UvbGlzdF9mcmVldGllci5odG1sKS5cbiAqXG4gKiBAcGFyYW0gc2lkIFtTSURdKGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9JQU0vbGF0ZXN0L1VzZXJHdWlkZS9yZWZlcmVuY2VfcG9saWNpZXNfZWxlbWVudHNfc2lkLmh0bWwpIG9mIHRoZSBzdGF0ZW1lbnRcbiAqL1xuZXhwb3J0IGNsYXNzIEZyZWV0aWVyIGV4dGVuZHMgUG9saWN5U3RhdGVtZW50IHtcbiAgcHVibGljIHNlcnZpY2VQcmVmaXggPSAnZnJlZXRpZXInO1xuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBnZXQgYSBzcGVjaWZpYyBhY3Rpdml0eSByZWNvcmRcbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBSZWFkXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hd3MtY29zdC1tYW5hZ2VtZW50L2xhdGVzdC9BUElSZWZlcmVuY2UvQVBJX2ZyZWV0aWVyX0dldEFjY291bnRBY3Rpdml0eS5odG1sXG4gICAqL1xuICBwdWJsaWMgdG9HZXRBY2NvdW50QWN0aXZpdHkoKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0dldEFjY291bnRBY3Rpdml0eScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGdldCBhbGwgb2YgdGhlIGluZm9ybWF0aW9uIHJlbGF0ZWQgdG8gdGhlIHN0YXRlIG9mIHRoZSBhY2NvdW50IHBsYW4gcmVsYXRlZCB0byBGcmVlIFRpZXJcbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBSZWFkXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9hd3MtY29zdC1tYW5hZ2VtZW50L2xhdGVzdC9BUElSZWZlcmVuY2UvQVBJX2ZyZWV0aWVyX0dldEFjY291bnRQbGFuU3RhdGUuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvR2V0QWNjb3VudFBsYW5TdGF0ZSgpIHtcbiAgICByZXR1cm4gdGhpcy50bygnR2V0QWNjb3VudFBsYW5TdGF0ZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGdldCBmcmVlIHRpZXIgdXNhZ2UgbGltaXRzIGFuZCBNVEQgdXNhZ2Ugc3RhdHVzXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogUmVhZFxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXdzYWNjb3VudGJpbGxpbmcvbGF0ZXN0L2Fib3V0djIvdHJhY2tpbmctZnJlZS10aWVyLXVzYWdlLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b0dldEZyZWVUaWVyVXNhZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0dldEZyZWVUaWVyVXNhZ2UnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBsaXN0IGF2YWlsYWJsZSBhY3Rpdml0aWVzXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogTGlzdFxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vYXdzLWNvc3QtbWFuYWdlbWVudC9sYXRlc3QvQVBJUmVmZXJlbmNlL0FQSV9mcmVldGllcl9MaXN0QWNjb3VudEFjdGl2aXRpZXMuaHRtbFxuICAgKi9cbiAgcHVibGljIHRvTGlzdEFjY291bnRBY3Rpdml0aWVzKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdMaXN0QWNjb3VudEFjdGl2aXRpZXMnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byB0cmlnZ2VyIGFuIHVwZ3JhZGUgb2YgYWNjb3VudCBwbGFuXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogV3JpdGVcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2F3cy1jb3N0LW1hbmFnZW1lbnQvbGF0ZXN0L0FQSVJlZmVyZW5jZS9BUElfZnJlZXRpZXJfVXBncmFkZUFjY291bnRQbGFuLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b1VwZ3JhZGVBY2NvdW50UGxhbigpIHtcbiAgICByZXR1cm4gdGhpcy50bygnVXBncmFkZUFjY291bnRQbGFuJyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gZ2V0IGZyZWUgdGllciBhbGVydCBwcmVmZXJlbmNlIChlbWFpbCBhZGRyZXNzKVxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFJlYWRcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2F3c2FjY291bnRiaWxsaW5nL2xhdGVzdC9hYm91dHYyL3RyYWNraW5nLWZyZWUtdGllci11c2FnZS5odG1sXG4gICAqL1xuICBwdWJsaWMgdG9HZXRGcmVlVGllckFsZXJ0UHJlZmVyZW5jZSgpIHtcbiAgICByZXR1cm4gdGhpcy50bygnR2V0RnJlZVRpZXJBbGVydFByZWZlcmVuY2UnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBzZXQgZnJlZSB0aWVyIGFsZXJ0IHByZWZlcmVuY2UgKGVtYWlsIGFkZHJlc3MpXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogV3JpdGVcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2F3c2FjY291bnRiaWxsaW5nL2xhdGVzdC9hYm91dHYyL3RyYWNraW5nLWZyZWUtdGllci11c2FnZS5odG1sXG4gICAqL1xuICBwdWJsaWMgdG9QdXRGcmVlVGllckFsZXJ0UHJlZmVyZW5jZSgpIHtcbiAgICByZXR1cm4gdGhpcy50bygnUHV0RnJlZVRpZXJBbGVydFByZWZlcmVuY2UnKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhY2Nlc3NMZXZlbExpc3Q6IEFjY2Vzc0xldmVsTGlzdCA9IHtcbiAgICBSZWFkOiBbXG4gICAgICAnR2V0QWNjb3VudEFjdGl2aXR5JyxcbiAgICAgICdHZXRBY2NvdW50UGxhblN0YXRlJyxcbiAgICAgICdHZXRGcmVlVGllclVzYWdlJyxcbiAgICAgICdHZXRGcmVlVGllckFsZXJ0UHJlZmVyZW5jZSdcbiAgICBdLFxuICAgIExpc3Q6IFtcbiAgICAgICdMaXN0QWNjb3VudEFjdGl2aXRpZXMnXG4gICAgXSxcbiAgICBXcml0ZTogW1xuICAgICAgJ1VwZ3JhZGVBY2NvdW50UGxhbicsXG4gICAgICAnUHV0RnJlZVRpZXJBbGVydFByZWZlcmVuY2UnXG4gICAgXVxuICB9O1xuXG4gIC8qKlxuICAgKiBTdGF0ZW1lbnQgcHJvdmlkZXIgZm9yIHNlcnZpY2UgW2ZyZWV0aWVyXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vc2VydmljZS1hdXRob3JpemF0aW9uL2xhdGVzdC9yZWZlcmVuY2UvbGlzdF9mcmVldGllci5odG1sKS5cbiAgICpcbiAgICovXG4gIGNvbnN0cnVjdG9yKHByb3BzPzogaWFtLlBvbGljeVN0YXRlbWVudFByb3BzKSB7XG4gICAgc3VwZXIocHJvcHMpO1xuICB9XG59XG4iXX0=