cdk-iam-floyd
Version:
AWS IAM policy statement generator with fluent interface for AWS CDK
127 lines • 12.3 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_awspricingplanmanagerservice.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 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 pending a 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_awspricingplanmanagerservice.html).
*
*/
constructor(props) {
super(props);
this.servicePrefix = 'pricingplanmanager';
this.accessLevelList = {
Write: [
'AssociateResourcesToSubscription',
'CancelSubscription',
'CancelSubscriptionChange',
'CreateSubscription',
'DisassociateResourcesFromSubscription',
'UpdateSubscription'
],
Read: [
'GetSubscription',
'ListSubscriptions'
]
};
}
}
exports.Pricingplanmanager = Pricingplanmanager;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpY2luZ3BsYW5tYW5hZ2Vyc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInByaWNpbmdwbGFubWFuYWdlcnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EseUNBQStDO0FBRy9DOzs7O0dBSUc7QUFDSCxNQUFhLGtCQUFtQixTQUFRLHdCQUFlO0lBR3JEOzs7Ozs7T0FNRztJQUNJLGtDQUFrQztRQUN2QyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsa0NBQWtDLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksb0JBQW9CO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSwwQkFBMEI7UUFDL0IsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLDBCQUEwQixDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLG9CQUFvQjtRQUN6QixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksdUNBQXVDO1FBQzVDLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxpQkFBaUI7UUFDdEIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLG1CQUFtQjtRQUN4QixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksb0JBQW9CO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFpQkQ7Ozs7Ozs7O09BUUc7SUFDSSxjQUFjLENBQUMsY0FBc0IsRUFBRSxPQUFnQixFQUFFLFNBQWtCO1FBQ2hGLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxPQUFRLFNBQVMsSUFBSSxJQUFJLENBQUMsZ0JBQWlCLHdCQUF5QixPQUFPLElBQUksSUFBSSxDQUFDLGNBQWUsaUJBQWtCLGNBQWUsRUFBRSxDQUFDLENBQUM7SUFDekosQ0FBQztJQUVEOzs7T0FHRztJQUNILFlBQVksS0FBZ0M7UUFDMUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBM0hSLGtCQUFhLEdBQUcsb0JBQW9CLENBQUM7UUEwRmxDLG9CQUFlLEdBQW9CO1lBQzNDLEtBQUssRUFBRTtnQkFDTCxrQ0FBa0M7Z0JBQ2xDLG9CQUFvQjtnQkFDcEIsMEJBQTBCO2dCQUMxQixvQkFBb0I7Z0JBQ3BCLHVDQUF1QztnQkFDdkMsb0JBQW9CO2FBQ3JCO1lBQ0QsSUFBSSxFQUFFO2dCQUNKLGlCQUFpQjtnQkFDakIsbUJBQW1CO2FBQ3BCO1NBQ0YsQ0FBQztJQXFCRixDQUFDO0NBQ0Y7QUE5SEQsZ0RBOEhDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWNjZXNzTGV2ZWxMaXN0IH0gZnJvbSAnLi4vLi4vc2hhcmVkL2FjY2Vzcy1sZXZlbCc7XG5pbXBvcnQgeyBQb2xpY3lTdGF0ZW1lbnQgfSBmcm9tICcuLi8uLi9zaGFyZWQnO1xuaW1wb3J0IHsgYXdzX2lhbSBhcyBpYW0gfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcblxuLyoqXG4gKiBTdGF0ZW1lbnQgcHJvdmlkZXIgZm9yIHNlcnZpY2UgW3ByaWNpbmdwbGFubWFuYWdlcl0oaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL3NlcnZpY2UtYXV0aG9yaXphdGlvbi9sYXRlc3QvcmVmZXJlbmNlL2xpc3RfYXdzcHJpY2luZ3BsYW5tYW5hZ2Vyc2VydmljZS5odG1sKS5cbiAqXG4gKiBAcGFyYW0gc2lkIFtTSURdKGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9JQU0vbGF0ZXN0L1VzZXJHdWlkZS9yZWZlcmVuY2VfcG9saWNpZXNfZWxlbWVudHNfc2lkLmh0bWwpIG9mIHRoZSBzdGF0ZW1lbnRcbiAqL1xuZXhwb3J0IGNsYXNzIFByaWNpbmdwbGFubWFuYWdlciBleHRlbmRzIFBvbGljeVN0YXRlbWVudCB7XG4gIHB1YmxpYyBzZXJ2aWNlUHJlZml4ID0gJ3ByaWNpbmdwbGFubWFuYWdlcic7XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGFzc29jaWF0ZSByZXNvdXJjZXMgd2l0aCBhIHN1YnNjcmlwdGlvblxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9QcmljaW5nUGxhbk1hbmFnZXIvbGF0ZXN0L1VzZXJHdWlkZS9zZWN1cml0eS1wcmljaW5nLXBsYW4uaHRtbFxuICAgKi9cbiAgcHVibGljIHRvQXNzb2NpYXRlUmVzb3VyY2VzVG9TdWJzY3JpcHRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0Fzc29jaWF0ZVJlc291cmNlc1RvU3Vic2NyaXB0aW9uJyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gY2FuY2VsIGEgc3Vic2NyaXB0aW9uXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogV3JpdGVcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL1ByaWNpbmdQbGFuTWFuYWdlci9sYXRlc3QvVXNlckd1aWRlL3NlY3VyaXR5LXByaWNpbmctcGxhbi5odG1sXG4gICAqL1xuICBwdWJsaWMgdG9DYW5jZWxTdWJzY3JpcHRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0NhbmNlbFN1YnNjcmlwdGlvbicpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGNhbmNlbCBhIHBlbmRpbmcgYSBjaGFuZ2UgZm9yIGEgc3Vic2NyaXB0aW9uXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogV3JpdGVcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL1ByaWNpbmdQbGFuTWFuYWdlci9sYXRlc3QvVXNlckd1aWRlL3NlY3VyaXR5LXByaWNpbmctcGxhbi5odG1sXG4gICAqL1xuICBwdWJsaWMgdG9DYW5jZWxTdWJzY3JpcHRpb25DaGFuZ2UoKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0NhbmNlbFN1YnNjcmlwdGlvbkNoYW5nZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdyYW50cyBwZXJtaXNzaW9uIHRvIGNyZWF0ZSBhIHN1YnNjcmlwdGlvblxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFdyaXRlXG4gICAqXG4gICAqIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9QcmljaW5nUGxhbk1hbmFnZXIvbGF0ZXN0L1VzZXJHdWlkZS9zZWN1cml0eS1wcmljaW5nLXBsYW4uaHRtbFxuICAgKi9cbiAgcHVibGljIHRvQ3JlYXRlU3Vic2NyaXB0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLnRvKCdDcmVhdGVTdWJzY3JpcHRpb24nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBkaXNhc3NvY2lhdGUgcmVzb3VyY2VzIGZyb20gYSBzdWJzY3JpcHRpb25cbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBXcml0ZVxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vUHJpY2luZ1BsYW5NYW5hZ2VyL2xhdGVzdC9Vc2VyR3VpZGUvc2VjdXJpdHktcHJpY2luZy1wbGFuLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b0Rpc2Fzc29jaWF0ZVJlc291cmNlc0Zyb21TdWJzY3JpcHRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMudG8oJ0Rpc2Fzc29jaWF0ZVJlc291cmNlc0Zyb21TdWJzY3JpcHRpb24nKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byBnZXQgdGhlIGRldGFpbHMgZm9yIGEgc3Vic2NyaXB0aW9uXG4gICAqXG4gICAqIEFjY2VzcyBMZXZlbDogUmVhZFxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vUHJpY2luZ1BsYW5NYW5hZ2VyL2xhdGVzdC9Vc2VyR3VpZGUvc2VjdXJpdHktcHJpY2luZy1wbGFuLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b0dldFN1YnNjcmlwdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy50bygnR2V0U3Vic2NyaXB0aW9uJyk7XG4gIH1cblxuICAvKipcbiAgICogR3JhbnRzIHBlcm1pc3Npb24gdG8gbGlzdCBzdWJzY3JpcHRpb25zIGluIHlvdXIgYWNjb3VudFxuICAgKlxuICAgKiBBY2Nlc3MgTGV2ZWw6IFJlYWRcbiAgICpcbiAgICogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL1ByaWNpbmdQbGFuTWFuYWdlci9sYXRlc3QvVXNlckd1aWRlL3NlY3VyaXR5LXByaWNpbmctcGxhbi5odG1sXG4gICAqL1xuICBwdWJsaWMgdG9MaXN0U3Vic2NyaXB0aW9ucygpIHtcbiAgICByZXR1cm4gdGhpcy50bygnTGlzdFN1YnNjcmlwdGlvbnMnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHcmFudHMgcGVybWlzc2lvbiB0byB1cGRhdGUgYSBzdWJzY3JpcHRpb25cbiAgICpcbiAgICogQWNjZXNzIExldmVsOiBXcml0ZVxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vUHJpY2luZ1BsYW5NYW5hZ2VyL2xhdGVzdC9Vc2VyR3VpZGUvc2VjdXJpdHktcHJpY2luZy1wbGFuLmh0bWxcbiAgICovXG4gIHB1YmxpYyB0b1VwZGF0ZVN1YnNjcmlwdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy50bygnVXBkYXRlU3Vic2NyaXB0aW9uJyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYWNjZXNzTGV2ZWxMaXN0OiBBY2Nlc3NMZXZlbExpc3QgPSB7XG4gICAgV3JpdGU6IFtcbiAgICAgICdBc3NvY2lhdGVSZXNvdXJjZXNUb1N1YnNjcmlwdGlvbicsXG4gICAgICAnQ2FuY2VsU3Vic2NyaXB0aW9uJyxcbiAgICAgICdDYW5jZWxTdWJzY3JpcHRpb25DaGFuZ2UnLFxuICAgICAgJ0NyZWF0ZVN1YnNjcmlwdGlvbicsXG4gICAgICAnRGlzYXNzb2NpYXRlUmVzb3VyY2VzRnJvbVN1YnNjcmlwdGlvbicsXG4gICAgICAnVXBkYXRlU3Vic2NyaXB0aW9uJ1xuICAgIF0sXG4gICAgUmVhZDogW1xuICAgICAgJ0dldFN1YnNjcmlwdGlvbicsXG4gICAgICAnTGlzdFN1YnNjcmlwdGlvbnMnXG4gICAgXVxuICB9O1xuXG4gIC8qKlxuICAgKiBBZGRzIGEgcmVzb3VyY2Ugb2YgdHlwZSBzdWJzY3JpcHRpb24gdG8gdGhlIHN0YXRlbWVudFxuICAgKlxuICAgKiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vcHJpY2luZ3BsYW5tYW5hZ2VyL3VzZXJndWlkZS9zdWJzY3JpcHRpb24uaHRtbFxuICAgKlxuICAgKiBAcGFyYW0gc3Vic2NyaXB0aW9uSWQgLSBJZGVudGlmaWVyIGZvciB0aGUgc3Vic2NyaXB0aW9uSWQuXG4gICAqIEBwYXJhbSBhY2NvdW50IC0gQWNjb3VudCBvZiB0aGUgcmVzb3VyY2U7IGRlZmF1bHRzIHRvIGAqYCwgdW5sZXNzIHVzaW5nIHRoZSBDREssIHdoZXJlIHRoZSBkZWZhdWx0IGlzIHRoZSBjdXJyZW50IFN0YWNrJ3MgYWNjb3VudC5cbiAgICogQHBhcmFtIHBhcnRpdGlvbiAtIFBhcnRpdGlvbiBvZiB0aGUgQVdTIGFjY291bnQgW2F3cywgYXdzLWNuLCBhd3MtdXMtZ292XTsgZGVmYXVsdHMgdG8gYGF3c2AsIHVubGVzcyB1c2luZyB0aGUgQ0RLLCB3aGVyZSB0aGUgZGVmYXVsdCBpcyB0aGUgY3VycmVudCBTdGFjaydzIHBhcnRpdGlvbi5cbiAgICovXG4gIHB1YmxpYyBvblN1YnNjcmlwdGlvbihzdWJzY3JpcHRpb25JZDogc3RyaW5nLCBhY2NvdW50Pzogc3RyaW5nLCBwYXJ0aXRpb24/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5vbihgYXJuOiR7IHBhcnRpdGlvbiA/PyB0aGlzLmRlZmF1bHRQYXJ0aXRpb24gfTpwcmljaW5ncGxhbm1hbmFnZXI6OiR7IGFjY291bnQgPz8gdGhpcy5kZWZhdWx0QWNjb3VudCB9OnN1YnNjcmlwdGlvbi8keyBzdWJzY3JpcHRpb25JZCB9YCk7XG4gIH1cblxuICAvKipcbiAgICogU3RhdGVtZW50IHByb3ZpZGVyIGZvciBzZXJ2aWNlIFtwcmljaW5ncGxhbm1hbmFnZXJdKGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9zZXJ2aWNlLWF1dGhvcml6YXRpb24vbGF0ZXN0L3JlZmVyZW5jZS9saXN0X2F3c3ByaWNpbmdwbGFubWFuYWdlcnNlcnZpY2UuaHRtbCkuXG4gICAqXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcm9wcz86IGlhbS5Qb2xpY3lTdGF0ZW1lbnRQcm9wcykge1xuICAgIHN1cGVyKHByb3BzKTtcbiAgfVxufVxuIl19