cdk-iam-floyd
Version:
AWS IAM policy statement generator with fluent interface for AWS CDK
1,096 lines • 103 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.SesMailmanager = void 0;
const shared_1 = require("../../shared");
/**
* Statement provider for service [ses-mailmanager](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonsimpleemailservice-mailmanager.html).
*
* @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement
*/
class SesMailmanager extends shared_1.PolicyStatement {
/**
* Grants permission to configure vended log delivery for Mail Manager resources
*
* Access Level: Permissions management
*
* https://docs.aws.amazon.com/ses/latest/dg/eb-policies.html
*/
toAllowVendedLogDeliveryForResource() {
return this.to('AllowVendedLogDeliveryForResource');
}
/**
* Grants permission to create an addon instance
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
* - .ifAwsTagKeys()
* - .ifAddonSubscriptionArn()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_CreateAddonInstance.html
*/
toCreateAddonInstance() {
return this.to('CreateAddonInstance');
}
/**
* Grants permission to create an addon subscription
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
* - .ifAwsTagKeys()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_CreateAddonSubscription.html
*/
toCreateAddonSubscription() {
return this.to('CreateAddonSubscription');
}
/**
* Grants permission to create an address list
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
* - .ifAwsTagKeys()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_CreateAddressList.html
*/
toCreateAddressList() {
return this.to('CreateAddressList');
}
/**
* Grants permission to create an import job on an address list
*
* Access Level: Write
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_CreateAddressListImportJob.html
*/
toCreateAddressListImportJob() {
return this.to('CreateAddressListImportJob');
}
/**
* Grants permission to create an archive
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
* - .ifAwsTagKeys()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_CreateArchive.html
*/
toCreateArchive() {
return this.to('CreateArchive');
}
/**
* Grants permission to create an ingress point
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
* - .ifAwsTagKeys()
* - .ifMailManagerRuleSetArn()
* - .ifMailManagerTrafficPolicyArn()
*
* Dependent actions:
* - ec2:DescribeVpcEndpoints
* - iam:CreateServiceLinkedRole
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_CreateIngressPoint.html
*/
toCreateIngressPoint() {
return this.to('CreateIngressPoint');
}
/**
* Grants permission to create a SMTP relay
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
* - .ifAwsTagKeys()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_CreateRelay.html
*/
toCreateRelay() {
return this.to('CreateRelay');
}
/**
* Grants permission to create a rule set
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
* - .ifAwsTagKeys()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_CreateRuleSet.html
*/
toCreateRuleSet() {
return this.to('CreateRuleSet');
}
/**
* Grants permission to create a traffic policy
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
* - .ifAwsTagKeys()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_CreateTrafficPolicy.html
*/
toCreateTrafficPolicy() {
return this.to('CreateTrafficPolicy');
}
/**
* Grants permission to delete an addon instance
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_DeleteAddonInstance.html
*/
toDeleteAddonInstance() {
return this.to('DeleteAddonInstance');
}
/**
* Grants permission to delete an addon subscription
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_DeleteAddonSubscription.html
*/
toDeleteAddonSubscription() {
return this.to('DeleteAddonSubscription');
}
/**
* Grants permission to delete an address list
*
* Access Level: Write
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_DeleteAddressList.html
*/
toDeleteAddressList() {
return this.to('DeleteAddressList');
}
/**
* Grants permission to delete an archive
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_DeleteArchive.html
*/
toDeleteArchive() {
return this.to('DeleteArchive');
}
/**
* Grants permission to delete an ingress point
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_DeleteIngressPoint.html
*/
toDeleteIngressPoint() {
return this.to('DeleteIngressPoint');
}
/**
* Grants permission to delete a SMTP relay
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_DeleteRelay.html
*/
toDeleteRelay() {
return this.to('DeleteRelay');
}
/**
* Grants permission to delete a rule set
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_DeleteRuleSet.html
*/
toDeleteRuleSet() {
return this.to('DeleteRuleSet');
}
/**
* Grants permission to delete a traffic point
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_DeleteTrafficPolicy.html
*/
toDeleteTrafficPolicy() {
return this.to('DeleteTrafficPolicy');
}
/**
* Grants permission to remove a member from an address list
*
* Access Level: Write
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_DeregisterMemberFromAddressList.html
*/
toDeregisterMemberFromAddressList() {
return this.to('DeregisterMemberFromAddressList');
}
/**
* Grants permission to get information about an addon instance
*
* Access Level: Read
*
* Possible conditions:
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_GetAddonInstance.html
*/
toGetAddonInstance() {
return this.to('GetAddonInstance');
}
/**
* Grants permission to get information about an addon subscription
*
* Access Level: Read
*
* Possible conditions:
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_GetAddonSubscription.html
*/
toGetAddonSubscription() {
return this.to('GetAddonSubscription');
}
/**
* Grants permission to get information about an address list
*
* Access Level: Read
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_GetAddressList.html
*/
toGetAddressList() {
return this.to('GetAddressList');
}
/**
* Grants permission to get information about an import job on an address list
*
* Access Level: Read
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_GetAddressListImportJob.html
*/
toGetAddressListImportJob() {
return this.to('GetAddressListImportJob');
}
/**
* Grants permission to get information about an archive
*
* Access Level: Read
*
* Possible conditions:
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_GetArchive.html
*/
toGetArchive() {
return this.to('GetArchive');
}
/**
* Grants permission to get information about an archive export
*
* Access Level: Read
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_GetArchiveExport.html
*/
toGetArchiveExport() {
return this.to('GetArchiveExport');
}
/**
* Grants permission to retrieve archived message
*
* Access Level: Read
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_GetArchiveMessage.html
*/
toGetArchiveMessage() {
return this.to('GetArchiveMessage');
}
/**
* Grants permission to retrieve archived message content
*
* Access Level: Read
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_GetArchiveMessageContent.html
*/
toGetArchiveMessageContent() {
return this.to('GetArchiveMessageContent');
}
/**
* Grants permission to get information about a search
*
* Access Level: Read
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_GetArchiveSearch.html
*/
toGetArchiveSearch() {
return this.to('GetArchiveSearch');
}
/**
* Grants permission to get information about search results
*
* Access Level: Read
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_GetArchiveSearchResults.html
*/
toGetArchiveSearchResults() {
return this.to('GetArchiveSearchResults');
}
/**
* Grants permission to get information about an ingress point
*
* Access Level: Read
*
* Possible conditions:
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_GetIngressPoint.html
*/
toGetIngressPoint() {
return this.to('GetIngressPoint');
}
/**
* Grants permission to get information about a member in an address list
*
* Access Level: Read
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_GetMemberOfAddressList.html
*/
toGetMemberOfAddressList() {
return this.to('GetMemberOfAddressList');
}
/**
* Grants permission to get information about a SMTP relay
*
* Access Level: Read
*
* Possible conditions:
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_GetRelay.html
*/
toGetRelay() {
return this.to('GetRelay');
}
/**
* Grants permission to get information about a rule set
*
* Access Level: Read
*
* Possible conditions:
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_GetRuleSet.html
*/
toGetRuleSet() {
return this.to('GetRuleSet');
}
/**
* Grants permission to get information about a traffic policy
*
* Access Level: Read
*
* Possible conditions:
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_GetTrafficPolicy.html
*/
toGetTrafficPolicy() {
return this.to('GetTrafficPolicy');
}
/**
* Grants permission to list all of the addon instances associated with your account
*
* Access Level: List
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_ListAddonInstances.html
*/
toListAddonInstances() {
return this.to('ListAddonInstances');
}
/**
* Grants permission to list all of the addon subscriptions associated with your account
*
* Access Level: List
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_ListAddonSubscriptions.html
*/
toListAddonSubscriptions() {
return this.to('ListAddonSubscriptions');
}
/**
* Grants permission to list all of the import jobs associated with an address list
*
* Access Level: List
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_ListAddressListImportJobs.html
*/
toListAddressListImportJobs() {
return this.to('ListAddressListImportJobs');
}
/**
* Grants permission to list all of the address lists associated with your account
*
* Access Level: List
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_ListAddressLists.html
*/
toListAddressLists() {
return this.to('ListAddressLists');
}
/**
* Grants permission to list all of the archive exports associated with your account
*
* Access Level: List
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_ListArchiveExports.html
*/
toListArchiveExports() {
return this.to('ListArchiveExports');
}
/**
* Grants permission to list all of the archive searches associated with your account
*
* Access Level: List
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_ListArchiveSearches.html
*/
toListArchiveSearches() {
return this.to('ListArchiveSearches');
}
/**
* Grants permission to list all of the archives associated with your account
*
* Access Level: List
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_ListArchives.html
*/
toListArchives() {
return this.to('ListArchives');
}
/**
* Grants permission to list all of the ingress points associated with your account
*
* Access Level: List
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_ListIngressPoints.html
*/
toListIngressPoints() {
return this.to('ListIngressPoints');
}
/**
* Grants permission to list all of the members associated with an address list
*
* Access Level: List
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_ListMembersOfAddressList.html
*/
toListMembersOfAddressList() {
return this.to('ListMembersOfAddressList');
}
/**
* Grants permission to list all of the SMTP relays associated with your account
*
* Access Level: List
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_ListRelays.html
*/
toListRelays() {
return this.to('ListRelays');
}
/**
* Grants permission to list all of the rule sets associated with your account
*
* Access Level: List
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_ListRuleSets.html
*/
toListRuleSets() {
return this.to('ListRuleSets');
}
/**
* Grants permission to list all of the tags associated with the resource
*
* Access Level: Read
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_ListTagsForResource.html
*/
toListTagsForResource() {
return this.to('ListTagsForResource');
}
/**
* Grants permission to list all of the traffic policies associated with your account
*
* Access Level: List
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_ListTrafficPolicies.html
*/
toListTrafficPolicies() {
return this.to('ListTrafficPolicies');
}
/**
* Grants permission to add a member to an address list
*
* Access Level: Write
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_RegisterMemberToAddressList.html
*/
toRegisterMemberToAddressList() {
return this.to('RegisterMemberToAddressList');
}
/**
* Grants permission to start an import job on an address list
*
* Access Level: Write
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_StartAddressListImportJob.html
*/
toStartAddressListImportJob() {
return this.to('StartAddressListImportJob');
}
/**
* Grants permission to start an archive export
*
* Access Level: Write
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_StartArchiveExport.html
*/
toStartArchiveExport() {
return this.to('StartArchiveExport');
}
/**
* Grants permission to start an archive search
*
* Access Level: Write
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_StartArchiveSearch.html
*/
toStartArchiveSearch() {
return this.to('StartArchiveSearch');
}
/**
* Grants permission to stop an ongoing import job on an address list
*
* Access Level: Write
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_StopAddressListImportJob.html
*/
toStopAddressListImportJob() {
return this.to('StopAddressListImportJob');
}
/**
* Grants permission to stop archive export
*
* Access Level: Write
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_StopArchiveExport.html
*/
toStopArchiveExport() {
return this.to('StopArchiveExport');
}
/**
* Grants permission to stop archive search
*
* Access Level: Write
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_StopArchiveSearch.html
*/
toStopArchiveSearch() {
return this.to('StopArchiveSearch');
}
/**
* Grants permission to add one or more tags (keys and values) to a specified resource
*
* Access Level: Tagging
*
* Possible conditions:
* - .ifAwsTagKeys()
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_TagResource.html
*/
toTagResource() {
return this.to('TagResource');
}
/**
* Grants permission to remove one or more tags (keys and values) from a specified resource
*
* Access Level: Tagging
*
* Possible conditions:
* - .ifAwsTagKeys()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_UntagResource.html
*/
toUntagResource() {
return this.to('UntagResource');
}
/**
* Grants permission to update an archive
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_UpdateArchive.html
*/
toUpdateArchive() {
return this.to('UpdateArchive');
}
/**
* Grants permission to update an ingress point
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
* - .ifMailManagerTrafficPolicyArn()
* - .ifMailManagerRuleSetArn()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_UpdateIngressPoint.html
*/
toUpdateIngressPoint() {
return this.to('UpdateIngressPoint');
}
/**
* Grants permission to update a SMTP relay
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_UpdateRelay.html
*/
toUpdateRelay() {
return this.to('UpdateRelay');
}
/**
* Grants permission to update a rule set
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_UpdateRuleSet.html
*/
toUpdateRuleSet() {
return this.to('UpdateRuleSet');
}
/**
* Grants permission to update a traffic policy
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_UpdateTrafficPolicy.html
*/
toUpdateTrafficPolicy() {
return this.to('UpdateTrafficPolicy');
}
/**
* Adds a resource of type addon-instance to the statement
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_AddonInstance.html
*
* @param addonInstanceId - Identifier for the addonInstanceId.
* @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
* @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
* @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.
*
* Possible conditions:
* - .ifAwsResourceTag()
*/
onAddonInstance(addonInstanceId, account, region, partition) {
return this.on(`arn:${partition ?? this.defaultPartition}:ses:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:addon-instance/${addonInstanceId}`);
}
/**
* Adds a resource of type addon-subscription to the statement
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_AddonSubscription.html
*
* @param addonSubscriptionId - Identifier for the addonSubscriptionId.
* @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
* @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
* @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.
*
* Possible conditions:
* - .ifAwsResourceTag()
*/
onAddonSubscription(addonSubscriptionId, account, region, partition) {
return this.on(`arn:${partition ?? this.defaultPartition}:ses:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:addon-subscription/${addonSubscriptionId}`);
}
/**
* Adds a resource of type mailmanager-archive to the statement
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_Archive.html
*
* @param archiveId - Identifier for the archiveId.
* @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
* @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
* @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.
*
* Possible conditions:
* - .ifAwsResourceTag()
*/
onMailmanagerArchive(archiveId, account, region, partition) {
return this.on(`arn:${partition ?? this.defaultPartition}:ses:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:mailmanager-archive/${archiveId}`);
}
/**
* Adds a resource of type mailmanager-ingress-point to the statement
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_IngressPoint.html
*
* @param ingressPointId - Identifier for the ingressPointId.
* @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
* @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
* @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.
*
* Possible conditions:
* - .ifAwsResourceTag()
* - .ifMailManagerIngressPointType()
*/
onMailmanagerIngressPoint(ingressPointId, account, region, partition) {
return this.on(`arn:${partition ?? this.defaultPartition}:ses:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:mailmanager-ingress-point/${ingressPointId}`);
}
/**
* Adds a resource of type mailmanager-smtp-relay to the statement
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_Relay.html
*
* @param relayId - Identifier for the relayId.
* @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
* @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
* @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.
*
* Possible conditions:
* - .ifAwsResourceTag()
*/
onMailmanagerSmtpRelay(relayId, account, region, partition) {
return this.on(`arn:${partition ?? this.defaultPartition}:ses:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:mailmanager-smtp-relay/${relayId}`);
}
/**
* Adds a resource of type mailmanager-rule-set to the statement
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_RuleSet.html
*
* @param ruleSetId - Identifier for the ruleSetId.
* @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
* @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
* @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.
*
* Possible conditions:
* - .ifAwsResourceTag()
*/
onMailmanagerRuleSet(ruleSetId, account, region, partition) {
return this.on(`arn:${partition ?? this.defaultPartition}:ses:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:mailmanager-rule-set/${ruleSetId}`);
}
/**
* Adds a resource of type mailmanager-traffic-policy to the statement
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_TrafficPolicy.html
*
* @param trafficPolicyId - Identifier for the trafficPolicyId.
* @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
* @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
* @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.
*
* Possible conditions:
* - .ifAwsResourceTag()
*/
onMailmanagerTrafficPolicy(trafficPolicyId, account, region, partition) {
return this.on(`arn:${partition ?? this.defaultPartition}:ses:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:mailmanager-traffic-policy/${trafficPolicyId}`);
}
/**
* Adds a resource of type mailmanager-address-list to the statement
*
* https://docs.aws.amazon.com/sesmailmanager/latest/APIReference/API_AddressList.html
*
* @param addressListId - Identifier for the addressListId.
* @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
* @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
* @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.
*
* Possible conditions:
* - .ifAwsResourceTag()
*/
onMailmanagerAddressList(addressListId, account, region, partition) {
return this.on(`arn:${partition ?? this.defaultPartition}:ses:${region ?? this.defaultRegion}:${account ?? this.defaultAccount}:mailmanager-address-list/${addressListId}`);
}
/**
* Filters access by the presence of tag key-value pairs in the request
*
* https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-requesttag
*
* Applies to actions:
* - .toCreateAddonInstance()
* - .toCreateAddonSubscription()
* - .toCreateAddressList()
* - .toCreateArchive()
* - .toCreateIngressPoint()
* - .toCreateRelay()
* - .toCreateRuleSet()
* - .toCreateTrafficPolicy()
* - .toDeleteAddonInstance()
* - .toDeleteAddonSubscription()
* - .toDeleteArchive()
* - .toDeleteIngressPoint()
* - .toDeleteRelay()
* - .toDeleteRuleSet()
* - .toDeleteTrafficPolicy()
* - .toGetAddonInstance()
* - .toGetAddonSubscription()
* - .toGetArchive()
* - .toGetIngressPoint()
* - .toGetRelay()
* - .toGetRuleSet()
* - .toGetTrafficPolicy()
* - .toTagResource()
* - .toUpdateArchive()
* - .toUpdateIngressPoint()
* - .toUpdateRelay()
* - .toUpdateRuleSet()
* - .toUpdateTrafficPolicy()
*
* @param tagKey The tag key to check
* @param value The value(s) to check
* @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
*/
ifAwsRequestTag(tagKey, value, operator) {
return this.if(`aws:RequestTag/${tagKey}`, value, operator ?? 'StringLike');
}
/**
* Filters access by tag key-value pairs attached to the resource
*
* https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-resourcetag
*
* Applies to actions:
* - .toCreateAddressListImportJob()
* - .toDeleteAddressList()
* - .toDeregisterMemberFromAddressList()
* - .toGetAddressList()
* - .toGetAddressListImportJob()
* - .toGetMemberOfAddressList()
* - .toListAddressListImportJobs()
* - .toListMembersOfAddressList()
* - .toRegisterMemberToAddressList()
* - .toStartAddressListImportJob()
* - .toStopAddressListImportJob()
*
* Applies to resource types:
* - addon-instance
* - addon-subscription
* - mailmanager-archive
* - mailmanager-ingress-point
* - mailmanager-smtp-relay
* - mailmanager-rule-set
* - mailmanager-traffic-policy
* - mailmanager-address-list
*
* @param tagKey The tag key to check
* @param value The value(s) to check
* @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
*/
ifAwsResourceTag(tagKey, value, operator) {
return this.if(`aws:ResourceTag/${tagKey}`, value, operator ?? 'StringLike');
}
/**
* Filters access by the presence of tag keys in the request
*
* https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-tagkeys
*
* Applies to actions:
* - .toCreateAddonInstance()
* - .toCreateAddonSubscription()
* - .toCreateAddressList()
* - .toCreateArchive()
* - .toCreateIngressPoint()
* - .toCreateRelay()
* - .toCreateRuleSet()
* - .toCreateTrafficPolicy()
* - .toTagResource()
* - .toUntagResource()
*
* @param value The value(s) to check
* @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
*/
ifAwsTagKeys(value, operator) {
return this.if(`aws:TagKeys`, value, operator ?? 'StringLike');
}
/**
* Filters access by SES Addon Subscription ARN
*
* https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonsesmailmanager.html#amazonsesmailmanager-policy-keys
*
* Applies to actions:
* - .toCreateAddonInstance()
*
* @param value The value(s) to check
* @param operator Works with [arn operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_ARN). **Default:** `ArnLike`
*/
ifAddonSubscriptionArn(value, operator) {
return this.if(`AddonSubscriptionArn`, value, operator ?? 'ArnLike');
}
/**
* Filters access by SES Mail Manager ingress point type, for example OPEN or AUTH
*
* https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonsesmailmanager.html#amazonsesmailmanager-policy-keys
*
* Applies to resource types:
* - mailmanager-ingress-point
*
* @param value The value(s) to check
* @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
*/
ifMailManagerIngressPointType(value, operator) {
return this.if(`MailManagerIngressPointType`, value, operator ?? 'StringLike');
}
/**
* Filters access by SES Mail Manager rule set ARN
*
* https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonsesmailmanager.html#amazonsesmailmanager-policy-keys
*
* Applies to actions:
* - .toCreateIngressPoint()
* - .toUpdateIngressPoint()
*
* @param value The value(s) to check
* @param operator Works with [arn operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_ARN). **Default:** `ArnLike`
*/
ifMailManagerRuleSetArn(value, operator) {
return this.if(`MailManagerRuleSetArn`, value, operator ?? 'ArnLike');
}
/**
* Filters access by SES Mail Manager traffic policy ARN
*
* https://docs.aws.amazon.com/IAM/latest/UserGuide/list_amazonsesmailmanager.html#amazonsesmailmanager-policy-keys
*
* Applies to actions:
* - .toCreateIngressPoint()
* - .toUpdateIngressPoint()
*
* @param value The value(s) to check
* @param operator Works with [arn operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_ARN). **Default:** `ArnLike`
*/
ifMailManagerTrafficPolicyArn(value, operator) {
return this.if(`MailManagerTrafficPolicyArn`, value, operator ?? 'ArnLike');
}
/**
* Statement provider for service [ses-mailmanager](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazonsimpleemailservice-mailmanager.html).
*
*/
constructor(props) {
super(props);
this.servicePrefix = 'ses';
this.accessLevelList = {
'Permissions management': [
'AllowVendedLogDeliveryForResource'
],
Write: [
'CreateAddonInstance',
'CreateAddonSubscription',
'CreateAddressList',
'CreateAddressListImportJob',
'CreateArchive',
'CreateIngressPoint',
'CreateRelay',
'CreateRuleSet',
'CreateTrafficPolicy',
'DeleteAddonInstance',
'DeleteAddonSubscription',
'DeleteAddressList',
'DeleteArchive',
'DeleteIngressPoint',
'DeleteRelay',
'DeleteRuleSet',
'DeleteTrafficPolicy',
'DeregisterMemberFromAddressList',
'RegisterMemberToAddressList',
'StartAddressListImportJob',
'StartArchiveExport',
'StartArchiveSearch',
'StopAddressListImportJob',
'StopArchiveExport',
'StopArchiveSearch',
'UpdateArchive',
'UpdateIngressPoint',
'UpdateRelay',
'UpdateRuleSet',
'UpdateTrafficPolicy'
],
Read: [
'GetAddonInstance',
'GetAddonSubscription',
'GetAddressList',
'GetAddressListImportJob',
'GetArchive',
'GetArchiveExport',
'GetArchiveMessage',
'GetArchiveMessageContent',
'GetArchiveSearch',
'GetArchiveSearchResults',
'GetIngressPoint',
'GetMemberOfAddressList',
'GetRelay',
'GetRuleSet',
'GetTrafficPolicy',
'ListTagsForResource'
],
List: [
'ListAddonInstances',
'ListAddonSubscriptions',
'ListAddressListImportJobs',
'ListAddressLists',
'ListArchiveExports',
'ListArchiveSearches',
'ListArchives',
'ListIngressPoints',
'ListMembersOfAddressList',
'ListRelays',
'ListRuleSets',
'ListTrafficPolicies'
],
Tagging: [
'TagResource',
'UntagResource'
]
};
}
}
exports.SesMailmanager = SesMailmanager;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlZW1haWxzZXJ2aWNlLW1haWxtYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic2ltcGxlZW1haWxzZXJ2aWNlLW1haWxtYW5hZ2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHlDQUF5RDtBQUd6RDs7OztHQUlHO0FBQ0gsTUFBYSxjQUFlLFNBQVEsd0JBQWU7SUFHakQ7Ozs7OztPQU1HO0lBQ0ksbUNBQW1DO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRDs7Ozs7Ozs7Ozs7T0FXRztJQUNJLHFCQUFxQjtRQUMxQixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7T0FVRztJQUNJLHlCQUF5QjtRQUM5QixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7T0FVRztJQUNJLG1CQUFtQjtRQUN4QixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksNEJBQTRCO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRDs7Ozs7Ozs7OztPQVVHO0lBQ0ksZUFBZTtRQUNwQixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7Ozs7O09BZ0JHO0lBQ0ksb0JBQW9CO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7Ozs7Ozs7OztPQVVHO0lBQ0ksYUFBYTtRQUNsQixPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLENBQUM7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