cdk-iam-floyd
Version:
AWS IAM policy statement generator with fluent interface for AWS CDK
138 lines • 13.2 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Pricingplanmanager = void 0;
const shared_1 = require("../../shared");
/**
* Statement provider for service [pricingplanmanager](https://docs.aws.amazon.com/service-authorization/latest/reference/list_pricing-plan-manager.html).
*
* @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement
*/
class Pricingplanmanager extends shared_1.PolicyStatement {
/**
* Grants permission to approve paid subscription
*
* Access Level: Write
*
* https://docs.aws.amazon.com/PricingPlanManager/latest/UserGuide/security-pricing-plan.html
*/
toApprovePaidSubscription() {
return this.to('ApprovePaidSubscription');
}
/**
* Grants permission to associate resources with a subscription
*
* Access Level: Write
*
* https://docs.aws.amazon.com/PricingPlanManager/latest/UserGuide/security-pricing-plan.html
*/
toAssociateResourcesToSubscription() {
return this.to('AssociateResourcesToSubscription');
}
/**
* Grants permission to cancel a subscription
*
* Access Level: Write
*
* https://docs.aws.amazon.com/PricingPlanManager/latest/UserGuide/security-pricing-plan.html
*/
toCancelSubscription() {
return this.to('CancelSubscription');
}
/**
* Grants permission to cancel a scheduled change for a subscription
*
* Access Level: Write
*
* https://docs.aws.amazon.com/PricingPlanManager/latest/UserGuide/security-pricing-plan.html
*/
toCancelSubscriptionChange() {
return this.to('CancelSubscriptionChange');
}
/**
* Grants permission to create a subscription
*
* Access Level: Write
*
* https://docs.aws.amazon.com/PricingPlanManager/latest/UserGuide/security-pricing-plan.html
*/
toCreateSubscription() {
return this.to('CreateSubscription');
}
/**
* Grants permission to disassociate resources from a subscription
*
* Access Level: Write
*
* https://docs.aws.amazon.com/PricingPlanManager/latest/UserGuide/security-pricing-plan.html
*/
toDisassociateResourcesFromSubscription() {
return this.to('DisassociateResourcesFromSubscription');
}
/**
* Grants permission to get the details for a subscription
*
* Access Level: Read
*
* https://docs.aws.amazon.com/PricingPlanManager/latest/UserGuide/security-pricing-plan.html
*/
toGetSubscription() {
return this.to('GetSubscription');
}
/**
* Grants permission to list subscriptions in your account
*
* Access Level: Read
*
* https://docs.aws.amazon.com/PricingPlanManager/latest/UserGuide/security-pricing-plan.html
*/
toListSubscriptions() {
return this.to('ListSubscriptions');
}
/**
* Grants permission to update a subscription
*
* Access Level: Write
*
* https://docs.aws.amazon.com/PricingPlanManager/latest/UserGuide/security-pricing-plan.html
*/
toUpdateSubscription() {
return this.to('UpdateSubscription');
}
/**
* Adds a resource of type subscription to the statement
*
* https://docs.aws.amazon.com/pricingplanmanager/userguide/subscription.html
*
* @param subscriptionId - Identifier for the subscriptionId.
* @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
* @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
*/
onSubscription(subscriptionId, account, partition) {
return this.on(`arn:${partition ?? this.defaultPartition}:pricingplanmanager::${account ?? this.defaultAccount}:subscription/${subscriptionId}`);
}
/**
* Statement provider for service [pricingplanmanager](https://docs.aws.amazon.com/service-authorization/latest/reference/list_pricing-plan-manager.html).
*
*/
constructor(props) {
super(props);
this.servicePrefix = 'pricingplanmanager';
this.accessLevelList = {
Write: [
'ApprovePaidSubscription',
'AssociateResourcesToSubscription',
'CancelSubscription',
'CancelSubscriptionChange',
'CreateSubscription',
'DisassociateResourcesFromSubscription',
'UpdateSubscription'
],
Read: [
'GetSubscription',
'ListSubscriptions'
]
};
}
}
exports.Pricingplanmanager = Pricingplanmanager;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpY2luZy1wbGFuLW1hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJwcmljaW5nLXBsYW4tbWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSx5Q0FBK0M7QUFHL0M7Ozs7R0FJRztBQUNILE1BQWEsa0JBQW1CLFNBQVEsd0JBQWU7SUFHckQ7Ozs7OztPQU1HO0lBQ0kseUJBQXlCO1FBQzlCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxrQ0FBa0M7UUFDdkMsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLGtDQUFrQyxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLG9CQUFvQjtRQUN6QixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksMEJBQTBCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxvQkFBb0I7UUFDekIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLHVDQUF1QztRQUM1QyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsdUNBQXVDLENBQUMsQ0FBQztJQUMxRCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksaUJBQWlCO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxtQkFBbUI7UUFDeEIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLG9CQUFvQjtRQUN6QixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBa0JEOzs7Ozs7OztPQVFHO0lBQ0ksY0FBYyxDQUFDLGNBQXNCLEVBQUUsT0FBZ0IsRUFBRSxTQUFrQjtRQUNoRixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsT0FBUSxTQUFTLElBQUksSUFBSSxDQUFDLGdCQUFpQix3QkFBeUIsT0FBTyxJQUFJLElBQUksQ0FBQyxjQUFlLGlCQUFrQixjQUFlLEVBQUUsQ0FBQyxDQUFDO0lBQ3pKLENBQUM7SUFFRDs7O09BR0c7SUFDSCxZQUFZLEtBQWdDO1FBQzFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQXZJUixrQkFBYSxHQUFHLG9CQUFvQixDQUFDO1FBcUdsQyxvQkFBZSxHQUFvQjtZQUMzQyxLQUFLLEVBQUU7Z0JBQ0wseUJBQXlCO2dCQUN6QixrQ0FBa0M7Z0JBQ2xDLG9CQUFvQjtnQkFDcEIsMEJBQTBCO2dCQUMxQixvQkFBb0I7Z0JBQ3BCLHVDQUF1QztnQkFDdkMsb0JBQW9CO2FBQ3JCO1lBQ0QsSUFBSSxFQUFFO2dCQUNKLGlCQUFpQjtnQkFDakIsbUJBQW1CO2FBQ3BCO1NBQ0YsQ0FBQztJQXFCRixDQUFDO0NBQ0Y7QUExSUQsZ0RBMElDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWNjZXNzTGV2ZWxMaXN0IH0gZnJvbSAnLi4vLi4vc2hhcmVkL2FjY2Vzcy1sZXZlbCc7XG5pbXBvcnQgeyBQb2xpY3lTdGF0ZW1lbnQgfSBmcm9tICcuLi8uLi9zaGFyZWQnO1xuaW1wb3J0IHsgYXdzX2lhbSBhcyBpYW0gfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcblxuLyoqXG4gKiBTdGF0ZW1lbnQgcHJvdmlkZXIgZm9yIHNlcnZpY2UgW3ByaWNpbmdwbGFubWFuYWdlcl0oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL3NlcnZpY2UtYXV0aG9yaXphdGlvbi9sYXRlc3QvcmVmZXJlbmNlL2xpc3RfcHJpY2luZy1wbGFuLW1hbmFnZXIuaHRtbCkuXG4gKlxuICogQHBhcmFtIHNpZCBbU0lEXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vSUFNL2xhdGVzdC9Vc2VyR3VpZGUvcmVmZXJlbmNlX3BvbGljaWVzX2VsZW1lbnRzX3NpZC5odG1sKSBvZiB0aGUgc3RhdGVtZW50XG4gKi9cbmV4cG9ydCBjbGFzcyBQcmljaW5ncGxhbm1hbmFnZXIgZXh0ZW5kcyBQb2xpY3lTdGF0ZW1lbnQge1xuICBwdWJsaWMgc2VydmljZVByZWZpeCA9ICdwcmljaW5ncGxhbm1hbmFnZXInO1xuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBhcHByb3ZlIHBhaWQgc3Vic2NyaXB0aW9uXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogV3JpdGVcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL1ByaWNpbmdQbGFuTWFuYWdlci9sYXRlc3QvVXNlckd1aWRlL3NlY3VyaXR5LXByaWNpbmctcGxhbi5odG1sXG4gICAqL1xuICBwdWJsaWMgdG9BcHByb3ZlUGFpZFN1YnNjcmlwdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy50bygnQXBwcm92ZVBhaWRTdWJzY3JpcHRpb24nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBhc3NvY2lhdGUgcmVzb3VyY2VzIHdpdGggYSBzdWJzY3JpcHRpb25cbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBXcml0ZVxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vUHJpY2luZ1BsYW5NYW5hZ2VyL2xhdGVzdC9Vc2VyR3VpZGUvc2VjdXJpdHktcHJpY2luZy1wbGFuLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b0Fzc29jaWF0ZVJlc291cmNlc1RvU3Vic2NyaXB0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdBc3NvY2lhdGVSZXNvdXJjZXNUb1N1YnNjcmlwdGlvbicpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGNhbmNlbCBhIHN1YnNjcmlwdGlvblxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9QcmljaW5nUGxhbk1hbmFnZXIvbGF0ZXN0L1VzZXJHdWlkZS9zZWN1cml0eS1wcmljaW5nLXBsYW4uaHRtbFxuICAgKi9cbiAgcHVibGljIHRvQ2FuY2VsU3Vic2NyaXB0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdDYW5jZWxTdWJzY3JpcHRpb24nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBjYW5jZWwgYSBzY2hlZHVsZWQgY2hhbmdlIGZvciBhIHN1YnNjcmlwdGlvblxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9QcmljaW5nUGxhbk1hbmFnZXIvbGF0ZXN0L1VzZXJHdWlkZS9zZWN1cml0eS1wcmljaW5nLXBsYW4uaHRtbFxuICAgKi9cbiAgcHVibGljIHRvQ2FuY2VsU3Vic2NyaXB0aW9uQ2hhbmdlKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdDYW5jZWxTdWJzY3JpcHRpb25DaGFuZ2UnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBjcmVhdGUgYSBzdWJzY3JpcHRpb25cbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBXcml0ZVxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vUHJpY2luZ1BsYW5NYW5hZ2VyL2xhdGVzdC9Vc2VyR3VpZGUvc2VjdXJpdHktcHJpY2luZy1wbGFuLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b0NyZWF0ZVN1YnNjcmlwdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy50bygnQ3JlYXRlU3Vic2NyaXB0aW9uJyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gZGlzYXNzb2NpYXRlIHJlc291cmNlcyBmcm9tIGEgc3Vic2NyaXB0aW9uXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogV3JpdGVcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL1ByaWNpbmdQbGFuTWFuYWdlci9sYXRlc3QvVXNlckd1aWRlL3NlY3VyaXR5LXByaWNpbmctcGxhbi5odG1sXG4gICAqL1xuICBwdWJsaWMgdG9EaXNhc3NvY2lhdGVSZXNvdXJjZXNGcm9tU3Vic2NyaXB0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdEaXNhc3NvY2lhdGVSZXNvdXJjZXNGcm9tU3Vic2NyaXB0aW9uJyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gZ2V0IHRoZSBkZXRhaWxzIGZvciBhIHN1YnNjcmlwdGlvblxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFJlYWRcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL1ByaWNpbmdQbGFuTWFuYWdlci9sYXRlc3QvVXNlckd1aWRlL3NlY3VyaXR5LXByaWNpbmctcGxhbi5odG1sXG4gICAqL1xuICBwdWJsaWMgdG9HZXRTdWJzY3JpcHRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0dldFN1YnNjcmlwdGlvbicpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGxpc3Qgc3Vic2NyaXB0aW9ucyBpbiB5b3VyIGFjY291bnRcbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBSZWFkXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9QcmljaW5nUGxhbk1hbmFnZXIvbGF0ZXN0L1VzZXJHdWlkZS9zZWN1cml0eS1wcmljaW5nLXBsYW4uaHRtbFxuICAgKi9cbiAgcHVibGljIHRvTGlzdFN1YnNjcmlwdGlvbnMoKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0xpc3RTdWJzY3JpcHRpb25zJyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gdXBkYXRlIGEgc3Vic2NyaXB0aW9uXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogV3JpdGVcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL1ByaWNpbmdQbGFuTWFuYWdlci9sYXRlc3QvVXNlckd1aWRlL3NlY3VyaXR5LXByaWNpbmctcGxhbi5odG1sXG4gICAqL1xuICBwdWJsaWMgdG9VcGRhdGVTdWJzY3JpcHRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ1VwZGF0ZVN1YnNjcmlwdGlvbicpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFjY2Vzc0xldmVsTGlzdDogQWNjZXNzTGV2ZWxMaXN0ID0ge1xuICAgIFdyaXRlOiBbXG4gICAgICAnQXBwcm92ZVBhaWRTdWJzY3JpcHRpb24nLFxuICAgICAgJ0Fzc29jaWF0ZVJlc291cmNlc1RvU3Vic2NyaXB0aW9uJyxcbiAgICAgICdDYW5jZWxTdWJzY3JpcHRpb24nLFxuICAgICAgJ0NhbmNlbFN1YnNjcmlwdGlvbkNoYW5nZScsXG4gICAgICAnQ3JlYXRlU3Vic2NyaXB0aW9uJyxcbiAgICAgICdEaXNhc3NvY2lhdGVSZXNvdXJjZXNGcm9tU3Vic2NyaXB0aW9uJyxcbiAgICAgICdVcGRhdGVTdWJzY3JpcHRpb24nXG4gICAgXSxcbiAgICBSZWFkOiBbXG4gICAgICAnR2V0U3Vic2NyaXB0aW9uJyxcbiAgICAgICdMaXN0U3Vic2NyaXB0aW9ucydcbiAgICBdXG4gIH07XG5cbiAgLyoqXG4gICAqIEFkZHMgYSByZXNvdXJjZSBvZiB0eXBlIHN1YnNjcmlwdGlvbiB0byB0aGUgc3RhdGVtZW50XG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9wcmljaW5ncGxhbm1hbmFnZXIvdXNlcmd1aWRlL3N1YnNjcmlwdGlvbi5odG1sXG4gICAqXG4gICAqIEBwYXJhbSBzdWJzY3JpcHRpb25JZCAtIElkZW50aWZpZXIgZm9yIHRoZSBzdWJzY3JpcHRpb25JZC5cbiAgICogQHBhcmFtIGFjY291bnQgLSBBY2NvdW50IG9mIHRoZSByZXNvdXJjZTsgZGVmYXVsdHMgdG8gYCpgLCB1bmxlc3MgdXNpbmcgdGhlIENESywgd2hlcmUgdGhlIGRlZmF1bHQgaXMgdGhlIGN1cnJlbnQgU3RhY2sncyBhY2NvdW50LlxuICAgKiBAcGFyYW0gcGFydGl0aW9uIC0gUGFydGl0aW9uIG9mIHRoZSBBV1MgYWNjb3VudCBbYXdzLCBhd3MtY24sIGF3cy11cy1nb3ZdOyBkZWZhdWx0cyB0byBgYXdzYCwgdW5sZXNzIHVzaW5nIHRoZSBDREssIHdoZXJlIHRoZSBkZWZhdWx0IGlzIHRoZSBjdXJyZW50IFN0YWNrJ3MgcGFydGl0aW9uLlxuICAgKi9cbiAgcHVibGljIG9uU3Vic2NyaXB0aW9uKHN1YnNjcmlwdGlvbklkOiBzdHJpbmcsIGFjY291bnQ/OiBzdHJpbmcsIHBhcnRpdGlvbj86IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLm9uKGBhcm46JHsgcGFydGl0aW9uID8/IHRoaXMuZGVmYXVsdFBhcnRpdGlvbiB9OnByaWNpbmdwbGFubWFuYWdlcjo6JHsgYWNjb3VudCA/PyB0aGlzLmRlZmF1bHRBY2NvdW50IH06c3Vic2NyaXB0aW9uLyR7IHN1YnNjcmlwdGlvbklkIH1gKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTdGF0ZW1lbnQgcHJvdmlkZXIgZm9yIHNlcnZpY2UgW3ByaWNpbmdwbGFubWFuYWdlcl0oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL3NlcnZpY2UtYXV0aG9yaXphdGlvbi9sYXRlc3QvcmVmZXJlbmNlL2xpc3RfcHJpY2luZy1wbGFuLW1hbmFnZXIuaHRtbCkuXG4gICAqXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcm9wcz86IGlhbS5Qb2xpY3lTdGF0ZW1lbnRQcm9wcykge1xuICAgIHN1cGVyKHByb3BzKTtcbiAgfVxufVxuIl19