Documentation ¶
Index ¶
- func AllowListReceiptFilter_IsConstruct(x interface{}) *bool
- func CfnConfigurationSetEventDestination_CFN_RESOURCE_TYPE_NAME() *string
- func CfnConfigurationSetEventDestination_IsCfnElement(x interface{}) *bool
- func CfnConfigurationSetEventDestination_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnConfigurationSetEventDestination_IsConstruct(x interface{}) *bool
- func CfnConfigurationSet_CFN_RESOURCE_TYPE_NAME() *string
- func CfnConfigurationSet_IsCfnElement(x interface{}) *bool
- func CfnConfigurationSet_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnConfigurationSet_IsConstruct(x interface{}) *bool
- func CfnContactList_CFN_RESOURCE_TYPE_NAME() *string
- func CfnContactList_IsCfnElement(x interface{}) *bool
- func CfnContactList_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnContactList_IsConstruct(x interface{}) *bool
- func CfnReceiptFilter_CFN_RESOURCE_TYPE_NAME() *string
- func CfnReceiptFilter_IsCfnElement(x interface{}) *bool
- func CfnReceiptFilter_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnReceiptFilter_IsConstruct(x interface{}) *bool
- func CfnReceiptRuleSet_CFN_RESOURCE_TYPE_NAME() *string
- func CfnReceiptRuleSet_IsCfnElement(x interface{}) *bool
- func CfnReceiptRuleSet_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnReceiptRuleSet_IsConstruct(x interface{}) *bool
- func CfnReceiptRule_CFN_RESOURCE_TYPE_NAME() *string
- func CfnReceiptRule_IsCfnElement(x interface{}) *bool
- func CfnReceiptRule_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnReceiptRule_IsConstruct(x interface{}) *bool
- func CfnTemplate_CFN_RESOURCE_TYPE_NAME() *string
- func CfnTemplate_IsCfnElement(x interface{}) *bool
- func CfnTemplate_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnTemplate_IsConstruct(x interface{}) *bool
- func DropSpamReceiptRule_IsConstruct(x interface{}) *bool
- func NewAllowListReceiptFilter_Override(a AllowListReceiptFilter, scope constructs.Construct, id *string, ...)
- func NewCfnConfigurationSetEventDestination_Override(c CfnConfigurationSetEventDestination, scope constructs.Construct, id *string, ...)
- func NewCfnConfigurationSet_Override(c CfnConfigurationSet, scope constructs.Construct, id *string, ...)
- func NewCfnContactList_Override(c CfnContactList, scope constructs.Construct, id *string, ...)
- func NewCfnReceiptFilter_Override(c CfnReceiptFilter, scope constructs.Construct, id *string, ...)
- func NewCfnReceiptRuleSet_Override(c CfnReceiptRuleSet, scope constructs.Construct, id *string, ...)
- func NewCfnReceiptRule_Override(c CfnReceiptRule, scope constructs.Construct, id *string, ...)
- func NewCfnTemplate_Override(c CfnTemplate, scope constructs.Construct, id *string, props *CfnTemplateProps)
- func NewDropSpamReceiptRule_Override(d DropSpamReceiptRule, scope constructs.Construct, id *string, ...)
- func NewReceiptFilter_Override(r ReceiptFilter, scope constructs.Construct, id *string, ...)
- func NewReceiptRuleSet_Override(r ReceiptRuleSet, scope constructs.Construct, id *string, ...)
- func NewReceiptRule_Override(r ReceiptRule, scope constructs.Construct, id *string, props *ReceiptRuleProps)
- func ReceiptFilter_IsConstruct(x interface{}) *bool
- func ReceiptFilter_IsResource(construct constructs.IConstruct) *bool
- func ReceiptRuleSet_IsConstruct(x interface{}) *bool
- func ReceiptRuleSet_IsResource(construct constructs.IConstruct) *bool
- func ReceiptRule_IsConstruct(x interface{}) *bool
- func ReceiptRule_IsResource(construct constructs.IConstruct) *bool
- type AddHeaderActionConfig
- type AllowListReceiptFilter
- type AllowListReceiptFilterProps
- type BounceActionConfig
- type CfnConfigurationSet
- type CfnConfigurationSetEventDestination
- type CfnConfigurationSetEventDestinationProps
- type CfnConfigurationSetEventDestination_CloudWatchDestinationProperty
- type CfnConfigurationSetEventDestination_DimensionConfigurationProperty
- type CfnConfigurationSetEventDestination_EventDestinationProperty
- type CfnConfigurationSetEventDestination_KinesisFirehoseDestinationProperty
- type CfnConfigurationSetProps
- type CfnContactList
- type CfnContactListProps
- type CfnContactList_TopicProperty
- type CfnReceiptFilter
- type CfnReceiptFilterProps
- type CfnReceiptFilter_FilterProperty
- type CfnReceiptFilter_IpFilterProperty
- type CfnReceiptRule
- type CfnReceiptRuleProps
- type CfnReceiptRuleSet
- type CfnReceiptRuleSetProps
- type CfnReceiptRule_ActionProperty
- type CfnReceiptRule_AddHeaderActionProperty
- type CfnReceiptRule_BounceActionProperty
- type CfnReceiptRule_LambdaActionProperty
- type CfnReceiptRule_RuleProperty
- type CfnReceiptRule_S3ActionProperty
- type CfnReceiptRule_SNSActionProperty
- type CfnReceiptRule_StopActionProperty
- type CfnReceiptRule_WorkmailActionProperty
- type CfnTemplate
- type CfnTemplateProps
- type CfnTemplate_TemplateProperty
- type DropSpamReceiptRule
- type DropSpamReceiptRuleProps
- type IReceiptRule
- type IReceiptRuleAction
- type IReceiptRuleSet
- type LambdaActionConfig
- type ReceiptFilter
- type ReceiptFilterPolicy
- type ReceiptFilterProps
- type ReceiptRule
- type ReceiptRuleActionConfig
- type ReceiptRuleOptions
- type ReceiptRuleProps
- type ReceiptRuleSet
- type ReceiptRuleSetProps
- type S3ActionConfig
- type SNSActionConfig
- type StopActionConfig
- type TlsPolicy
- type WorkmailActionConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AllowListReceiptFilter_IsConstruct ¶
func AllowListReceiptFilter_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func CfnConfigurationSetEventDestination_CFN_RESOURCE_TYPE_NAME ¶
func CfnConfigurationSetEventDestination_CFN_RESOURCE_TYPE_NAME() *string
func CfnConfigurationSetEventDestination_IsCfnElement ¶
func CfnConfigurationSetEventDestination_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnConfigurationSetEventDestination_IsCfnResource ¶
func CfnConfigurationSetEventDestination_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnConfigurationSetEventDestination_IsConstruct ¶
func CfnConfigurationSetEventDestination_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func CfnConfigurationSet_CFN_RESOURCE_TYPE_NAME ¶
func CfnConfigurationSet_CFN_RESOURCE_TYPE_NAME() *string
func CfnConfigurationSet_IsCfnElement ¶
func CfnConfigurationSet_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnConfigurationSet_IsCfnResource ¶
func CfnConfigurationSet_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnConfigurationSet_IsConstruct ¶
func CfnConfigurationSet_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func CfnContactList_CFN_RESOURCE_TYPE_NAME ¶
func CfnContactList_CFN_RESOURCE_TYPE_NAME() *string
func CfnContactList_IsCfnElement ¶
func CfnContactList_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnContactList_IsCfnResource ¶
func CfnContactList_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnContactList_IsConstruct ¶
func CfnContactList_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func CfnReceiptFilter_CFN_RESOURCE_TYPE_NAME ¶
func CfnReceiptFilter_CFN_RESOURCE_TYPE_NAME() *string
func CfnReceiptFilter_IsCfnElement ¶
func CfnReceiptFilter_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnReceiptFilter_IsCfnResource ¶
func CfnReceiptFilter_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnReceiptFilter_IsConstruct ¶
func CfnReceiptFilter_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func CfnReceiptRuleSet_CFN_RESOURCE_TYPE_NAME ¶
func CfnReceiptRuleSet_CFN_RESOURCE_TYPE_NAME() *string
func CfnReceiptRuleSet_IsCfnElement ¶
func CfnReceiptRuleSet_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnReceiptRuleSet_IsCfnResource ¶
func CfnReceiptRuleSet_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnReceiptRuleSet_IsConstruct ¶
func CfnReceiptRuleSet_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func CfnReceiptRule_CFN_RESOURCE_TYPE_NAME ¶
func CfnReceiptRule_CFN_RESOURCE_TYPE_NAME() *string
func CfnReceiptRule_IsCfnElement ¶
func CfnReceiptRule_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnReceiptRule_IsCfnResource ¶
func CfnReceiptRule_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnReceiptRule_IsConstruct ¶
func CfnReceiptRule_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func CfnTemplate_CFN_RESOURCE_TYPE_NAME ¶
func CfnTemplate_CFN_RESOURCE_TYPE_NAME() *string
func CfnTemplate_IsCfnElement ¶
func CfnTemplate_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element.
func CfnTemplate_IsCfnResource ¶
func CfnTemplate_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource.
func CfnTemplate_IsConstruct ¶
func CfnTemplate_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func DropSpamReceiptRule_IsConstruct ¶
func DropSpamReceiptRule_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func NewAllowListReceiptFilter_Override ¶
func NewAllowListReceiptFilter_Override(a AllowListReceiptFilter, scope constructs.Construct, id *string, props *AllowListReceiptFilterProps)
func NewCfnConfigurationSetEventDestination_Override ¶
func NewCfnConfigurationSetEventDestination_Override(c CfnConfigurationSetEventDestination, scope constructs.Construct, id *string, props *CfnConfigurationSetEventDestinationProps)
Create a new `AWS::SES::ConfigurationSetEventDestination`.
func NewCfnConfigurationSet_Override ¶
func NewCfnConfigurationSet_Override(c CfnConfigurationSet, scope constructs.Construct, id *string, props *CfnConfigurationSetProps)
Create a new `AWS::SES::ConfigurationSet`.
func NewCfnContactList_Override ¶
func NewCfnContactList_Override(c CfnContactList, scope constructs.Construct, id *string, props *CfnContactListProps)
Create a new `AWS::SES::ContactList`.
func NewCfnReceiptFilter_Override ¶
func NewCfnReceiptFilter_Override(c CfnReceiptFilter, scope constructs.Construct, id *string, props *CfnReceiptFilterProps)
Create a new `AWS::SES::ReceiptFilter`.
func NewCfnReceiptRuleSet_Override ¶
func NewCfnReceiptRuleSet_Override(c CfnReceiptRuleSet, scope constructs.Construct, id *string, props *CfnReceiptRuleSetProps)
Create a new `AWS::SES::ReceiptRuleSet`.
func NewCfnReceiptRule_Override ¶
func NewCfnReceiptRule_Override(c CfnReceiptRule, scope constructs.Construct, id *string, props *CfnReceiptRuleProps)
Create a new `AWS::SES::ReceiptRule`.
func NewCfnTemplate_Override ¶
func NewCfnTemplate_Override(c CfnTemplate, scope constructs.Construct, id *string, props *CfnTemplateProps)
Create a new `AWS::SES::Template`.
func NewDropSpamReceiptRule_Override ¶
func NewDropSpamReceiptRule_Override(d DropSpamReceiptRule, scope constructs.Construct, id *string, props *DropSpamReceiptRuleProps)
func NewReceiptFilter_Override ¶
func NewReceiptFilter_Override(r ReceiptFilter, scope constructs.Construct, id *string, props *ReceiptFilterProps)
func NewReceiptRuleSet_Override ¶
func NewReceiptRuleSet_Override(r ReceiptRuleSet, scope constructs.Construct, id *string, props *ReceiptRuleSetProps)
func NewReceiptRule_Override ¶
func NewReceiptRule_Override(r ReceiptRule, scope constructs.Construct, id *string, props *ReceiptRuleProps)
func ReceiptFilter_IsConstruct ¶
func ReceiptFilter_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func ReceiptFilter_IsResource ¶
func ReceiptFilter_IsResource(construct constructs.IConstruct) *bool
Check whether the given construct is a Resource.
func ReceiptRuleSet_IsConstruct ¶
func ReceiptRuleSet_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func ReceiptRuleSet_IsResource ¶
func ReceiptRuleSet_IsResource(construct constructs.IConstruct) *bool
Check whether the given construct is a Resource.
func ReceiptRule_IsConstruct ¶
func ReceiptRule_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.
func ReceiptRule_IsResource ¶
func ReceiptRule_IsResource(construct constructs.IConstruct) *bool
Check whether the given construct is a Resource.
Types ¶
type AddHeaderActionConfig ¶
type AddHeaderActionConfig struct { // The name of the header that you want to add to the incoming message. HeaderName *string `json:"headerName" yaml:"headerName"` // The content that you want to include in the header. HeaderValue *string `json:"headerValue" yaml:"headerValue"` }
AddHeaderAction configuration.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" addHeaderActionConfig := &addHeaderActionConfig{ headerName: jsii.String("headerName"), headerValue: jsii.String("headerValue"), }
type AllowListReceiptFilter ¶
type AllowListReceiptFilter interface { constructs.Construct // The tree node. Node() constructs.Node // Returns a string representation of this construct. ToString() *string }
An allow list receipt filter.
Example:
ses.NewAllowListReceiptFilter(this, jsii.String("AllowList"), &allowListReceiptFilterProps{ ips: []*string{ jsii.String("10.0.0.0/16"), jsii.String("1.2.3.4/16"), }, })
func NewAllowListReceiptFilter ¶
func NewAllowListReceiptFilter(scope constructs.Construct, id *string, props *AllowListReceiptFilterProps) AllowListReceiptFilter
type AllowListReceiptFilterProps ¶
type AllowListReceiptFilterProps struct { // A list of ip addresses or ranges to allow list. Ips *[]*string `json:"ips" yaml:"ips"` }
Construction properties for am AllowListReceiptFilter.
Example:
ses.NewAllowListReceiptFilter(this, jsii.String("AllowList"), &allowListReceiptFilterProps{ ips: []*string{ jsii.String("10.0.0.0/16"), jsii.String("1.2.3.4/16"), }, })
type BounceActionConfig ¶
type BounceActionConfig struct { // Human-readable text to include in the bounce message. Message *string `json:"message" yaml:"message"` // The email address of the sender of the bounced email. // // This is the address that the bounce message is sent from. Sender *string `json:"sender" yaml:"sender"` // The SMTP reply code, as defined by RFC 5321. SmtpReplyCode *string `json:"smtpReplyCode" yaml:"smtpReplyCode"` // The SMTP enhanced status code, as defined by RFC 3463. StatusCode *string `json:"statusCode" yaml:"statusCode"` // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the bounce action is taken. TopicArn *string `json:"topicArn" yaml:"topicArn"` }
BoundAction configuration.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" bounceActionConfig := &bounceActionConfig{ message: jsii.String("message"), sender: jsii.String("sender"), smtpReplyCode: jsii.String("smtpReplyCode"), // the properties below are optional statusCode: jsii.String("statusCode"), topicArn: jsii.String("topicArn"), }
type CfnConfigurationSet ¶
type CfnConfigurationSet interface { awscdk.CfnResource awscdk.IInspectable // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The name of the configuration set. The name must meet the following requirements:. // // - Contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or dashes (-). // - Contain 64 characters or fewer. Name() *string SetName(val *string) // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::SES::ConfigurationSet`.
The name of the configuration set.
Configuration sets let you create groups of rules that you can apply to the emails you send using Amazon SES. For more information about using configuration sets, see [Using Amazon SES Configuration Sets](https://docs.aws.amazon.com/ses/latest/dg/using-configuration-sets.html) in the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/) .
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" cfnConfigurationSet := ses.NewCfnConfigurationSet(this, jsii.String("MyCfnConfigurationSet"), &cfnConfigurationSetProps{ name: jsii.String("name"), })
func NewCfnConfigurationSet ¶
func NewCfnConfigurationSet(scope constructs.Construct, id *string, props *CfnConfigurationSetProps) CfnConfigurationSet
Create a new `AWS::SES::ConfigurationSet`.
type CfnConfigurationSetEventDestination ¶
type CfnConfigurationSetEventDestination interface { awscdk.CfnResource awscdk.IInspectable AttrId() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // The name of the configuration set that contains the event destination. ConfigurationSetName() *string SetConfigurationSetName(val *string) // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The event destination object. EventDestination() interface{} SetEventDestination(val interface{}) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::SES::ConfigurationSetEventDestination`.
Specifies a configuration set event destination. An event destination is an AWS service that Amazon SES publishes email sending events to. When you specify an event destination, you provide one, and only one, destination. You can send event data to Amazon CloudWatch or Amazon Kinesis Data Firehose.
> You can't specify Amazon SNS event destinations in CloudFormation templates.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" cfnConfigurationSetEventDestination := ses.NewCfnConfigurationSetEventDestination(this, jsii.String("MyCfnConfigurationSetEventDestination"), &cfnConfigurationSetEventDestinationProps{ configurationSetName: jsii.String("configurationSetName"), eventDestination: &eventDestinationProperty{ matchingEventTypes: []*string{ jsii.String("matchingEventTypes"), }, // the properties below are optional cloudWatchDestination: &cloudWatchDestinationProperty{ dimensionConfigurations: []interface{}{ &dimensionConfigurationProperty{ defaultDimensionValue: jsii.String("defaultDimensionValue"), dimensionName: jsii.String("dimensionName"), dimensionValueSource: jsii.String("dimensionValueSource"), }, }, }, enabled: jsii.Boolean(false), kinesisFirehoseDestination: &kinesisFirehoseDestinationProperty{ deliveryStreamArn: jsii.String("deliveryStreamArn"), iamRoleArn: jsii.String("iamRoleArn"), }, name: jsii.String("name"), }, })
func NewCfnConfigurationSetEventDestination ¶
func NewCfnConfigurationSetEventDestination(scope constructs.Construct, id *string, props *CfnConfigurationSetEventDestinationProps) CfnConfigurationSetEventDestination
Create a new `AWS::SES::ConfigurationSetEventDestination`.
type CfnConfigurationSetEventDestinationProps ¶
type CfnConfigurationSetEventDestinationProps struct { // The name of the configuration set that contains the event destination. ConfigurationSetName *string `json:"configurationSetName" yaml:"configurationSetName"` // The event destination object. EventDestination interface{} `json:"eventDestination" yaml:"eventDestination"` }
Properties for defining a `CfnConfigurationSetEventDestination`.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" cfnConfigurationSetEventDestinationProps := &cfnConfigurationSetEventDestinationProps{ configurationSetName: jsii.String("configurationSetName"), eventDestination: &eventDestinationProperty{ matchingEventTypes: []*string{ jsii.String("matchingEventTypes"), }, // the properties below are optional cloudWatchDestination: &cloudWatchDestinationProperty{ dimensionConfigurations: []interface{}{ &dimensionConfigurationProperty{ defaultDimensionValue: jsii.String("defaultDimensionValue"), dimensionName: jsii.String("dimensionName"), dimensionValueSource: jsii.String("dimensionValueSource"), }, }, }, enabled: jsii.Boolean(false), kinesisFirehoseDestination: &kinesisFirehoseDestinationProperty{ deliveryStreamArn: jsii.String("deliveryStreamArn"), iamRoleArn: jsii.String("iamRoleArn"), }, name: jsii.String("name"), }, }
type CfnConfigurationSetEventDestination_CloudWatchDestinationProperty ¶
type CfnConfigurationSetEventDestination_CloudWatchDestinationProperty struct {
// A list of dimensions upon which to categorize your emails when you publish email sending events to Amazon CloudWatch.
DimensionConfigurations interface{} `json:"dimensionConfigurations" yaml:"dimensionConfigurations"`
}
Contains information associated with an Amazon CloudWatch event destination to which email sending events are published.
Event destinations, such as Amazon CloudWatch, are associated with configuration sets, which enable you to publish email sending events. For information about using configuration sets, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/monitor-sending-activity.html) .
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" cloudWatchDestinationProperty := &cloudWatchDestinationProperty{ dimensionConfigurations: []interface{}{ &dimensionConfigurationProperty{ defaultDimensionValue: jsii.String("defaultDimensionValue"), dimensionName: jsii.String("dimensionName"), dimensionValueSource: jsii.String("dimensionValueSource"), }, }, }
type CfnConfigurationSetEventDestination_DimensionConfigurationProperty ¶
type CfnConfigurationSetEventDestination_DimensionConfigurationProperty struct { // The default value of the dimension that is published to Amazon CloudWatch if you do not provide the value of the dimension when you send an email. // // The default value must meet the following requirements: // // - Contain only ASCII letters (a-z, A-Z), numbers (0-9), underscores (_), dashes (-), at signs (@), or periods (.). // - Contain 256 characters or fewer. DefaultDimensionValue *string `json:"defaultDimensionValue" yaml:"defaultDimensionValue"` // The name of an Amazon CloudWatch dimension associated with an email sending metric. // // The name must meet the following requirements: // // - Contain only ASCII letters (a-z, A-Z), numbers (0-9), underscores (_), dashes (-), or colons (:). // - Contain 256 characters or fewer. DimensionName *string `json:"dimensionName" yaml:"dimensionName"` // The place where Amazon SES finds the value of a dimension to publish to Amazon CloudWatch. // // To use the message tags that you specify using an `X-SES-MESSAGE-TAGS` header or a parameter to the `SendEmail` / `SendRawEmail` API, specify `messageTag` . To use your own email headers, specify `emailHeader` . To put a custom tag on any link included in your email, specify `linkTag` . DimensionValueSource *string `json:"dimensionValueSource" yaml:"dimensionValueSource"` }
Contains the dimension configuration to use when you publish email sending events to Amazon CloudWatch.
For information about publishing email sending events to Amazon CloudWatch, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/monitor-sending-activity.html) .
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" dimensionConfigurationProperty := &dimensionConfigurationProperty{ defaultDimensionValue: jsii.String("defaultDimensionValue"), dimensionName: jsii.String("dimensionName"), dimensionValueSource: jsii.String("dimensionValueSource"), }
type CfnConfigurationSetEventDestination_EventDestinationProperty ¶
type CfnConfigurationSetEventDestination_EventDestinationProperty struct { // The type of email sending events to publish to the event destination. // // - `send` - The call was successful and Amazon SES is attempting to deliver the email. // - `reject` - Amazon SES determined that the email contained a virus and rejected it. // - `bounce` - The recipient's mail server permanently rejected the email. This corresponds to a hard bounce. // - `complaint` - The recipient marked the email as spam. // - `delivery` - Amazon SES successfully delivered the email to the recipient's mail server. // - `open` - The recipient received the email and opened it in their email client. // - `click` - The recipient clicked one or more links in the email. // - `renderingFailure` - Amazon SES did not send the email because of a template rendering issue. MatchingEventTypes *[]*string `json:"matchingEventTypes" yaml:"matchingEventTypes"` // An object that contains the names, default values, and sources of the dimensions associated with an Amazon CloudWatch event destination. CloudWatchDestination interface{} `json:"cloudWatchDestination" yaml:"cloudWatchDestination"` // Sets whether Amazon SES publishes events to this destination when you send an email with the associated configuration set. // // Set to `true` to enable publishing to this destination; set to `false` to prevent publishing to this destination. The default value is `false` . Enabled interface{} `json:"enabled" yaml:"enabled"` // An object that contains the delivery stream ARN and the IAM role ARN associated with an Amazon Kinesis Firehose event destination. KinesisFirehoseDestination interface{} `json:"kinesisFirehoseDestination" yaml:"kinesisFirehoseDestination"` // The name of the event destination. The name must meet the following requirements:. // // - Contain only ASCII letters (a-z, A-Z), numbers (0-9), underscores (_), or dashes (-). // - Contain 64 characters or fewer. Name *string `json:"name" yaml:"name"` }
Contains information about an event destination.
> When you create or update an event destination, you must provide one, and only one, destination. The destination can be Amazon CloudWatch, Amazon Kinesis Firehose or Amazon Simple Notification Service (Amazon SNS).
Event destinations are associated with configuration sets, which enable you to publish email sending events to Amazon CloudWatch, Amazon Kinesis Firehose, or Amazon Simple Notification Service (Amazon SNS). For information about using configuration sets, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/monitor-sending-activity.html) .
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" eventDestinationProperty := &eventDestinationProperty{ matchingEventTypes: []*string{ jsii.String("matchingEventTypes"), }, // the properties below are optional cloudWatchDestination: &cloudWatchDestinationProperty{ dimensionConfigurations: []interface{}{ &dimensionConfigurationProperty{ defaultDimensionValue: jsii.String("defaultDimensionValue"), dimensionName: jsii.String("dimensionName"), dimensionValueSource: jsii.String("dimensionValueSource"), }, }, }, enabled: jsii.Boolean(false), kinesisFirehoseDestination: &kinesisFirehoseDestinationProperty{ deliveryStreamArn: jsii.String("deliveryStreamArn"), iamRoleArn: jsii.String("iamRoleArn"), }, name: jsii.String("name"), }
type CfnConfigurationSetEventDestination_KinesisFirehoseDestinationProperty ¶
type CfnConfigurationSetEventDestination_KinesisFirehoseDestinationProperty struct { // The ARN of the Amazon Kinesis Firehose stream that email sending events should be published to. DeliveryStreamArn *string `json:"deliveryStreamArn" yaml:"deliveryStreamArn"` // The ARN of the IAM role under which Amazon SES publishes email sending events to the Amazon Kinesis Firehose stream. IamRoleArn *string `json:"iamRoleArn" yaml:"iamRoleArn"` }
Contains the delivery stream ARN and the IAM role ARN associated with an Amazon Kinesis Firehose event destination.
Event destinations, such as Amazon Kinesis Firehose, are associated with configuration sets, which enable you to publish email sending events. For information about using configuration sets, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/monitor-sending-activity.html) .
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" kinesisFirehoseDestinationProperty := &kinesisFirehoseDestinationProperty{ deliveryStreamArn: jsii.String("deliveryStreamArn"), iamRoleArn: jsii.String("iamRoleArn"), }
type CfnConfigurationSetProps ¶
type CfnConfigurationSetProps struct { // The name of the configuration set. The name must meet the following requirements:. // // - Contain only letters (a-z, A-Z), numbers (0-9), underscores (_), or dashes (-). // - Contain 64 characters or fewer. Name *string `json:"name" yaml:"name"` }
Properties for defining a `CfnConfigurationSet`.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" cfnConfigurationSetProps := &cfnConfigurationSetProps{ name: jsii.String("name"), }
type CfnContactList ¶
type CfnContactList interface { awscdk.CfnResource awscdk.IInspectable // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // The name of the contact list. ContactListName() *string SetContactListName(val *string) // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // A description of what the contact list is about. Description() *string SetDescription(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // The tags associated with a contact list. Tags() awscdk.TagManager // An interest group, theme, or label within a list. // // A contact list can have multiple topics. Topics() interface{} SetTopics(val interface{}) // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::SES::ContactList`.
A list that contains contacts that have subscribed to a particular topic or topics.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" cfnContactList := ses.NewCfnContactList(this, jsii.String("MyCfnContactList"), &cfnContactListProps{ contactListName: jsii.String("contactListName"), description: jsii.String("description"), tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, topics: []interface{}{ &topicProperty{ defaultSubscriptionStatus: jsii.String("defaultSubscriptionStatus"), displayName: jsii.String("displayName"), topicName: jsii.String("topicName"), // the properties below are optional description: jsii.String("description"), }, }, })
func NewCfnContactList ¶
func NewCfnContactList(scope constructs.Construct, id *string, props *CfnContactListProps) CfnContactList
Create a new `AWS::SES::ContactList`.
type CfnContactListProps ¶
type CfnContactListProps struct { // The name of the contact list. ContactListName *string `json:"contactListName" yaml:"contactListName"` // A description of what the contact list is about. Description *string `json:"description" yaml:"description"` // The tags associated with a contact list. Tags *[]*awscdk.CfnTag `json:"tags" yaml:"tags"` // An interest group, theme, or label within a list. // // A contact list can have multiple topics. Topics interface{} `json:"topics" yaml:"topics"` }
Properties for defining a `CfnContactList`.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" cfnContactListProps := &cfnContactListProps{ contactListName: jsii.String("contactListName"), description: jsii.String("description"), tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, topics: []interface{}{ &topicProperty{ defaultSubscriptionStatus: jsii.String("defaultSubscriptionStatus"), displayName: jsii.String("displayName"), topicName: jsii.String("topicName"), // the properties below are optional description: jsii.String("description"), }, }, }
type CfnContactList_TopicProperty ¶
type CfnContactList_TopicProperty struct { // The default subscription status to be applied to a contact if the contact has not noted their preference for subscribing to a topic. DefaultSubscriptionStatus *string `json:"defaultSubscriptionStatus" yaml:"defaultSubscriptionStatus"` // The name of the topic the contact will see. DisplayName *string `json:"displayName" yaml:"displayName"` // The name of the topic. TopicName *string `json:"topicName" yaml:"topicName"` // A description of what the topic is about, which the contact will see. Description *string `json:"description" yaml:"description"` }
An interest group, theme, or label within a list.
Lists can have multiple topics.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" topicProperty := &topicProperty{ defaultSubscriptionStatus: jsii.String("defaultSubscriptionStatus"), displayName: jsii.String("displayName"), topicName: jsii.String("topicName"), // the properties below are optional description: jsii.String("description"), }
type CfnReceiptFilter ¶
type CfnReceiptFilter interface { awscdk.CfnResource awscdk.IInspectable // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // A data structure that describes the IP address filter to create, which consists of a name, an IP address range, and whether to allow or block mail from it. Filter() interface{} SetFilter(val interface{}) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::SES::ReceiptFilter`.
Specify a new IP address filter. You use IP address filters when you receive email with Amazon SES.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" cfnReceiptFilter := ses.NewCfnReceiptFilter(this, jsii.String("MyCfnReceiptFilter"), &cfnReceiptFilterProps{ filter: &filterProperty{ ipFilter: &ipFilterProperty{ cidr: jsii.String("cidr"), policy: jsii.String("policy"), }, // the properties below are optional name: jsii.String("name"), }, })
func NewCfnReceiptFilter ¶
func NewCfnReceiptFilter(scope constructs.Construct, id *string, props *CfnReceiptFilterProps) CfnReceiptFilter
Create a new `AWS::SES::ReceiptFilter`.
type CfnReceiptFilterProps ¶
type CfnReceiptFilterProps struct {
// A data structure that describes the IP address filter to create, which consists of a name, an IP address range, and whether to allow or block mail from it.
Filter interface{} `json:"filter" yaml:"filter"`
}
Properties for defining a `CfnReceiptFilter`.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" cfnReceiptFilterProps := &cfnReceiptFilterProps{ filter: &filterProperty{ ipFilter: &ipFilterProperty{ cidr: jsii.String("cidr"), policy: jsii.String("policy"), }, // the properties below are optional name: jsii.String("name"), }, }
type CfnReceiptFilter_FilterProperty ¶
type CfnReceiptFilter_FilterProperty struct { // A structure that provides the IP addresses to block or allow, and whether to block or allow incoming mail from them. IpFilter interface{} `json:"ipFilter" yaml:"ipFilter"` // The name of the IP address filter. The name must meet the following requirements:. // // - Contain only ASCII letters (a-z, A-Z), numbers (0-9), underscores (_), or dashes (-). // - Start and end with a letter or number. // - Contain 64 characters or fewer. Name *string `json:"name" yaml:"name"` }
Specifies an IP address filter.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" filterProperty := &filterProperty{ ipFilter: &ipFilterProperty{ cidr: jsii.String("cidr"), policy: jsii.String("policy"), }, // the properties below are optional name: jsii.String("name"), }
type CfnReceiptFilter_IpFilterProperty ¶
type CfnReceiptFilter_IpFilterProperty struct { // A single IP address or a range of IP addresses to block or allow, specified in Classless Inter-Domain Routing (CIDR) notation. // // An example of a single email address is 10.0.0.1. An example of a range of IP addresses is 10.0.0.1/24. For more information about CIDR notation, see [RFC 2317](https://docs.aws.amazon.com/https://tools.ietf.org/html/rfc2317) . Cidr *string `json:"cidr" yaml:"cidr"` // Indicates whether to block or allow incoming mail from the specified IP addresses. Policy *string `json:"policy" yaml:"policy"` }
A receipt IP address filter enables you to specify whether to accept or reject mail originating from an IP address or range of IP addresses.
For information about setting up IP address filters, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/receiving-email-ip-filtering-console-walkthrough.html) .
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" ipFilterProperty := &ipFilterProperty{ cidr: jsii.String("cidr"), policy: jsii.String("policy"), }
type CfnReceiptRule ¶
type CfnReceiptRule interface { awscdk.CfnResource awscdk.IInspectable // The name of an existing rule after which the new rule is placed. // // If this parameter is null, the new rule is inserted at the beginning of the rule list. After() *string SetAfter(val *string) // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // A data structure that contains the specified rule's name, actions, recipients, domains, enabled status, scan status, and TLS policy. Rule() interface{} SetRule(val interface{}) // The name of the rule set where the receipt rule is added. RuleSetName() *string SetRuleSetName(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::SES::ReceiptRule`.
Specifies a receipt rule.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" cfnReceiptRule := ses.NewCfnReceiptRule(this, jsii.String("MyCfnReceiptRule"), &cfnReceiptRuleProps{ rule: &ruleProperty{ actions: []interface{}{ &actionProperty{ addHeaderAction: &addHeaderActionProperty{ headerName: jsii.String("headerName"), headerValue: jsii.String("headerValue"), }, bounceAction: &bounceActionProperty{ message: jsii.String("message"), sender: jsii.String("sender"), smtpReplyCode: jsii.String("smtpReplyCode"), // the properties below are optional statusCode: jsii.String("statusCode"), topicArn: jsii.String("topicArn"), }, lambdaAction: &lambdaActionProperty{ functionArn: jsii.String("functionArn"), // the properties below are optional invocationType: jsii.String("invocationType"), topicArn: jsii.String("topicArn"), }, s3Action: &s3ActionProperty{ bucketName: jsii.String("bucketName"), // the properties below are optional kmsKeyArn: jsii.String("kmsKeyArn"), objectKeyPrefix: jsii.String("objectKeyPrefix"), topicArn: jsii.String("topicArn"), }, snsAction: &sNSActionProperty{ encoding: jsii.String("encoding"), topicArn: jsii.String("topicArn"), }, stopAction: &stopActionProperty{ scope: jsii.String("scope"), // the properties below are optional topicArn: jsii.String("topicArn"), }, workmailAction: &workmailActionProperty{ organizationArn: jsii.String("organizationArn"), // the properties below are optional topicArn: jsii.String("topicArn"), }, }, }, enabled: jsii.Boolean(false), name: jsii.String("name"), recipients: []*string{ jsii.String("recipients"), }, scanEnabled: jsii.Boolean(false), tlsPolicy: jsii.String("tlsPolicy"), }, ruleSetName: jsii.String("ruleSetName"), // the properties below are optional after: jsii.String("after"), })
func NewCfnReceiptRule ¶
func NewCfnReceiptRule(scope constructs.Construct, id *string, props *CfnReceiptRuleProps) CfnReceiptRule
Create a new `AWS::SES::ReceiptRule`.
type CfnReceiptRuleProps ¶
type CfnReceiptRuleProps struct { // A data structure that contains the specified rule's name, actions, recipients, domains, enabled status, scan status, and TLS policy. Rule interface{} `json:"rule" yaml:"rule"` // The name of the rule set where the receipt rule is added. RuleSetName *string `json:"ruleSetName" yaml:"ruleSetName"` // The name of an existing rule after which the new rule is placed. // // If this parameter is null, the new rule is inserted at the beginning of the rule list. After *string `json:"after" yaml:"after"` }
Properties for defining a `CfnReceiptRule`.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" cfnReceiptRuleProps := &cfnReceiptRuleProps{ rule: &ruleProperty{ actions: []interface{}{ &actionProperty{ addHeaderAction: &addHeaderActionProperty{ headerName: jsii.String("headerName"), headerValue: jsii.String("headerValue"), }, bounceAction: &bounceActionProperty{ message: jsii.String("message"), sender: jsii.String("sender"), smtpReplyCode: jsii.String("smtpReplyCode"), // the properties below are optional statusCode: jsii.String("statusCode"), topicArn: jsii.String("topicArn"), }, lambdaAction: &lambdaActionProperty{ functionArn: jsii.String("functionArn"), // the properties below are optional invocationType: jsii.String("invocationType"), topicArn: jsii.String("topicArn"), }, s3Action: &s3ActionProperty{ bucketName: jsii.String("bucketName"), // the properties below are optional kmsKeyArn: jsii.String("kmsKeyArn"), objectKeyPrefix: jsii.String("objectKeyPrefix"), topicArn: jsii.String("topicArn"), }, snsAction: &sNSActionProperty{ encoding: jsii.String("encoding"), topicArn: jsii.String("topicArn"), }, stopAction: &stopActionProperty{ scope: jsii.String("scope"), // the properties below are optional topicArn: jsii.String("topicArn"), }, workmailAction: &workmailActionProperty{ organizationArn: jsii.String("organizationArn"), // the properties below are optional topicArn: jsii.String("topicArn"), }, }, }, enabled: jsii.Boolean(false), name: jsii.String("name"), recipients: []*string{ jsii.String("recipients"), }, scanEnabled: jsii.Boolean(false), tlsPolicy: jsii.String("tlsPolicy"), }, ruleSetName: jsii.String("ruleSetName"), // the properties below are optional after: jsii.String("after"), }
type CfnReceiptRuleSet ¶
type CfnReceiptRuleSet interface { awscdk.CfnResource awscdk.IInspectable // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The name of the receipt rule set to reorder. RuleSetName() *string SetRuleSetName(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::SES::ReceiptRuleSet`.
Creates an empty receipt rule set.
For information about setting up receipt rule sets, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/receiving-email-concepts.html#receiving-email-concepts-rules) .
You can execute this operation no more than once per second.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" cfnReceiptRuleSet := ses.NewCfnReceiptRuleSet(this, jsii.String("MyCfnReceiptRuleSet"), &cfnReceiptRuleSetProps{ ruleSetName: jsii.String("ruleSetName"), })
func NewCfnReceiptRuleSet ¶
func NewCfnReceiptRuleSet(scope constructs.Construct, id *string, props *CfnReceiptRuleSetProps) CfnReceiptRuleSet
Create a new `AWS::SES::ReceiptRuleSet`.
type CfnReceiptRuleSetProps ¶
type CfnReceiptRuleSetProps struct { // The name of the receipt rule set to reorder. RuleSetName *string `json:"ruleSetName" yaml:"ruleSetName"` }
Properties for defining a `CfnReceiptRuleSet`.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" cfnReceiptRuleSetProps := &cfnReceiptRuleSetProps{ ruleSetName: jsii.String("ruleSetName"), }
type CfnReceiptRule_ActionProperty ¶
type CfnReceiptRule_ActionProperty struct { // Adds a header to the received email. AddHeaderAction interface{} `json:"addHeaderAction" yaml:"addHeaderAction"` // Rejects the received email by returning a bounce response to the sender and, optionally, publishes a notification to Amazon Simple Notification Service (Amazon SNS). BounceAction interface{} `json:"bounceAction" yaml:"bounceAction"` // Calls an AWS Lambda function, and optionally, publishes a notification to Amazon SNS. LambdaAction interface{} `json:"lambdaAction" yaml:"lambdaAction"` // Saves the received message to an Amazon Simple Storage Service (Amazon S3) bucket and, optionally, publishes a notification to Amazon SNS. S3Action interface{} `json:"s3Action" yaml:"s3Action"` // Publishes the email content within a notification to Amazon SNS. SnsAction interface{} `json:"snsAction" yaml:"snsAction"` // Terminates the evaluation of the receipt rule set and optionally publishes a notification to Amazon SNS. StopAction interface{} `json:"stopAction" yaml:"stopAction"` // Calls Amazon WorkMail and, optionally, publishes a notification to Amazon Amazon SNS. WorkmailAction interface{} `json:"workmailAction" yaml:"workmailAction"` }
An action that Amazon SES can take when it receives an email on behalf of one or more email addresses or domains that you own.
An instance of this data type can represent only one action.
For information about setting up receipt rules, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/receiving-email-receipt-rules-console-walkthrough.html) .
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" actionProperty := &actionProperty{ addHeaderAction: &addHeaderActionProperty{ headerName: jsii.String("headerName"), headerValue: jsii.String("headerValue"), }, bounceAction: &bounceActionProperty{ message: jsii.String("message"), sender: jsii.String("sender"), smtpReplyCode: jsii.String("smtpReplyCode"), // the properties below are optional statusCode: jsii.String("statusCode"), topicArn: jsii.String("topicArn"), }, lambdaAction: &lambdaActionProperty{ functionArn: jsii.String("functionArn"), // the properties below are optional invocationType: jsii.String("invocationType"), topicArn: jsii.String("topicArn"), }, s3Action: &s3ActionProperty{ bucketName: jsii.String("bucketName"), // the properties below are optional kmsKeyArn: jsii.String("kmsKeyArn"), objectKeyPrefix: jsii.String("objectKeyPrefix"), topicArn: jsii.String("topicArn"), }, snsAction: &sNSActionProperty{ encoding: jsii.String("encoding"), topicArn: jsii.String("topicArn"), }, stopAction: &stopActionProperty{ scope: jsii.String("scope"), // the properties below are optional topicArn: jsii.String("topicArn"), }, workmailAction: &workmailActionProperty{ organizationArn: jsii.String("organizationArn"), // the properties below are optional topicArn: jsii.String("topicArn"), }, }
type CfnReceiptRule_AddHeaderActionProperty ¶
type CfnReceiptRule_AddHeaderActionProperty struct { // The name of the header to add to the incoming message. // // The name must contain at least one character, and can contain up to 50 characters. It consists of alphanumeric (a–z, A–Z, 0–9) characters and dashes. HeaderName *string `json:"headerName" yaml:"headerName"` // The content to include in the header. // // This value can contain up to 2048 characters. It can't contain newline ( `\n` ) or carriage return ( `\r` ) characters. HeaderValue *string `json:"headerValue" yaml:"headerValue"` }
When included in a receipt rule, this action adds a header to the received email.
For information about adding a header using a receipt rule, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/receiving-email-action-add-header.html) .
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" addHeaderActionProperty := &addHeaderActionProperty{ headerName: jsii.String("headerName"), headerValue: jsii.String("headerValue"), }
type CfnReceiptRule_BounceActionProperty ¶
type CfnReceiptRule_BounceActionProperty struct { // Human-readable text to include in the bounce message. Message *string `json:"message" yaml:"message"` // The email address of the sender of the bounced email. // // This is the address from which the bounce message is sent. Sender *string `json:"sender" yaml:"sender"` // The SMTP reply code, as defined by [RFC 5321](https://docs.aws.amazon.com/https://tools.ietf.org/html/rfc5321) . SmtpReplyCode *string `json:"smtpReplyCode" yaml:"smtpReplyCode"` // The SMTP enhanced status code, as defined by [RFC 3463](https://docs.aws.amazon.com/https://tools.ietf.org/html/rfc3463) . StatusCode *string `json:"statusCode" yaml:"statusCode"` // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the bounce action is taken. // // You can find the ARN of a topic by using the [ListTopics](https://docs.aws.amazon.com/sns/latest/api/API_ListTopics.html) operation in Amazon SNS. // // For more information about Amazon SNS topics, see the [Amazon SNS Developer Guide](https://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html) . TopicArn *string `json:"topicArn" yaml:"topicArn"` }
When included in a receipt rule, this action rejects the received email by returning a bounce response to the sender and, optionally, publishes a notification to Amazon Simple Notification Service (Amazon SNS).
For information about sending a bounce message in response to a received email, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/receiving-email-action-bounce.html) .
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" bounceActionProperty := &bounceActionProperty{ message: jsii.String("message"), sender: jsii.String("sender"), smtpReplyCode: jsii.String("smtpReplyCode"), // the properties below are optional statusCode: jsii.String("statusCode"), topicArn: jsii.String("topicArn"), }
type CfnReceiptRule_LambdaActionProperty ¶
type CfnReceiptRule_LambdaActionProperty struct { // The Amazon Resource Name (ARN) of the AWS Lambda function. // // An example of an AWS Lambda function ARN is `arn:aws:lambda:us-west-2:account-id:function:MyFunction` . For more information about AWS Lambda, see the [AWS Lambda Developer Guide](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) . FunctionArn *string `json:"functionArn" yaml:"functionArn"` // The invocation type of the AWS Lambda function. // // An invocation type of `RequestResponse` means that the execution of the function immediately results in a response, and a value of `Event` means that the function is invoked asynchronously. The default value is `Event` . For information about AWS Lambda invocation types, see the [AWS Lambda Developer Guide](https://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html) . // // > There is a 30-second timeout on `RequestResponse` invocations. You should use `Event` invocation in most cases. Use `RequestResponse` only to make a mail flow decision, such as whether to stop the receipt rule or the receipt rule set. InvocationType *string `json:"invocationType" yaml:"invocationType"` // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the Lambda action is executed. // // You can find the ARN of a topic by using the [ListTopics](https://docs.aws.amazon.com/sns/latest/api/API_ListTopics.html) operation in Amazon SNS. // // For more information about Amazon SNS topics, see the [Amazon SNS Developer Guide](https://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html) . TopicArn *string `json:"topicArn" yaml:"topicArn"` }
When included in a receipt rule, this action calls an AWS Lambda function and, optionally, publishes a notification to Amazon Simple Notification Service (Amazon SNS).
To enable Amazon SES to call your AWS Lambda function or to publish to an Amazon SNS topic of another account, Amazon SES must have permission to access those resources. For information about giving permissions, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/receiving-email-permissions.html) .
For information about using AWS Lambda actions in receipt rules, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/receiving-email-action-lambda.html) .
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" lambdaActionProperty := &lambdaActionProperty{ functionArn: jsii.String("functionArn"), // the properties below are optional invocationType: jsii.String("invocationType"), topicArn: jsii.String("topicArn"), }
type CfnReceiptRule_RuleProperty ¶
type CfnReceiptRule_RuleProperty struct { // An ordered list of actions to perform on messages that match at least one of the recipient email addresses or domains specified in the receipt rule. Actions interface{} `json:"actions" yaml:"actions"` // If `true` , the receipt rule is active. // // The default value is `false` . Enabled interface{} `json:"enabled" yaml:"enabled"` // The name of the receipt rule. The name must meet the following requirements:. // // - Contain only ASCII letters (a-z, A-Z), numbers (0-9), underscores (_), dashes (-), or periods (.). // - Start and end with a letter or number. // - Contain 64 characters or fewer. Name *string `json:"name" yaml:"name"` // The recipient domains and email addresses that the receipt rule applies to. // // If this field is not specified, this rule matches all recipients on all verified domains. Recipients *[]*string `json:"recipients" yaml:"recipients"` // If `true` , then messages that this receipt rule applies to are scanned for spam and viruses. // // The default value is `false` . ScanEnabled interface{} `json:"scanEnabled" yaml:"scanEnabled"` // Specifies whether Amazon SES should require that incoming email is delivered over a connection encrypted with Transport Layer Security (TLS). // // If this parameter is set to `Require` , Amazon SES bounces emails that are not received over TLS. The default is `Optional` . TlsPolicy *string `json:"tlsPolicy" yaml:"tlsPolicy"` }
Receipt rules enable you to specify which actions Amazon SES should take when it receives mail on behalf of one or more email addresses or domains that you own.
Each receipt rule defines a set of email addresses or domains that it applies to. If the email addresses or domains match at least one recipient address of the message, Amazon SES executes all of the receipt rule's actions on the message.
For information about setting up receipt rules, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/receiving-email-receipt-rules-console-walkthrough.html) .
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" ruleProperty := &ruleProperty{ actions: []interface{}{ &actionProperty{ addHeaderAction: &addHeaderActionProperty{ headerName: jsii.String("headerName"), headerValue: jsii.String("headerValue"), }, bounceAction: &bounceActionProperty{ message: jsii.String("message"), sender: jsii.String("sender"), smtpReplyCode: jsii.String("smtpReplyCode"), // the properties below are optional statusCode: jsii.String("statusCode"), topicArn: jsii.String("topicArn"), }, lambdaAction: &lambdaActionProperty{ functionArn: jsii.String("functionArn"), // the properties below are optional invocationType: jsii.String("invocationType"), topicArn: jsii.String("topicArn"), }, s3Action: &s3ActionProperty{ bucketName: jsii.String("bucketName"), // the properties below are optional kmsKeyArn: jsii.String("kmsKeyArn"), objectKeyPrefix: jsii.String("objectKeyPrefix"), topicArn: jsii.String("topicArn"), }, snsAction: &sNSActionProperty{ encoding: jsii.String("encoding"), topicArn: jsii.String("topicArn"), }, stopAction: &stopActionProperty{ scope: jsii.String("scope"), // the properties below are optional topicArn: jsii.String("topicArn"), }, workmailAction: &workmailActionProperty{ organizationArn: jsii.String("organizationArn"), // the properties below are optional topicArn: jsii.String("topicArn"), }, }, }, enabled: jsii.Boolean(false), name: jsii.String("name"), recipients: []*string{ jsii.String("recipients"), }, scanEnabled: jsii.Boolean(false), tlsPolicy: jsii.String("tlsPolicy"), }
type CfnReceiptRule_S3ActionProperty ¶
type CfnReceiptRule_S3ActionProperty struct { // The name of the Amazon S3 bucket for incoming email. BucketName *string `json:"bucketName" yaml:"bucketName"` // The customer master key that Amazon SES should use to encrypt your emails before saving them to the Amazon S3 bucket. // // You can use the default master key or a custom master key that you created in AWS KMS as follows: // // - To use the default master key, provide an ARN in the form of `arn:aws:kms:REGION:ACCOUNT-ID-WITHOUT-HYPHENS:alias/aws/ses` . For example, if your AWS account ID is 123456789012 and you want to use the default master key in the US West (Oregon) Region, the ARN of the default master key would be `arn:aws:kms:us-west-2:123456789012:alias/aws/ses` . If you use the default master key, you don't need to perform any extra steps to give Amazon SES permission to use the key. // - To use a custom master key that you created in AWS KMS, provide the ARN of the master key and ensure that you add a statement to your key's policy to give Amazon SES permission to use it. For more information about giving permissions, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/receiving-email-permissions.html) . // // For more information about key policies, see the [AWS KMS Developer Guide](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html) . If you do not specify a master key, Amazon SES does not encrypt your emails. // // > Your mail is encrypted by Amazon SES using the Amazon S3 encryption client before the mail is submitted to Amazon S3 for storage. It is not encrypted using Amazon S3 server-side encryption. This means that you must use the Amazon S3 encryption client to decrypt the email after retrieving it from Amazon S3, as the service has no access to use your AWS KMS keys for decryption. This encryption client is currently available with the [AWS SDK for Java](https://docs.aws.amazon.com/sdk-for-java/) and [AWS SDK for Ruby](https://docs.aws.amazon.com/sdk-for-ruby/) only. For more information about client-side encryption using AWS KMS master keys, see the [Amazon S3 Developer Guide](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingClientSideEncryption.html) . KmsKeyArn *string `json:"kmsKeyArn" yaml:"kmsKeyArn"` // The key prefix of the Amazon S3 bucket. // // The key prefix is similar to a directory name that enables you to store similar data under the same directory in a bucket. ObjectKeyPrefix *string `json:"objectKeyPrefix" yaml:"objectKeyPrefix"` // The ARN of the Amazon SNS topic to notify when the message is saved to the Amazon S3 bucket. // // You can find the ARN of a topic by using the [ListTopics](https://docs.aws.amazon.com/sns/latest/api/API_ListTopics.html) operation in Amazon SNS. // // For more information about Amazon SNS topics, see the [Amazon SNS Developer Guide](https://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html) . TopicArn *string `json:"topicArn" yaml:"topicArn"` }
When included in a receipt rule, this action saves the received message to an Amazon Simple Storage Service (Amazon S3) bucket and, optionally, publishes a notification to Amazon Simple Notification Service (Amazon SNS).
To enable Amazon SES to write emails to your Amazon S3 bucket, use an AWS KMS key to encrypt your emails, or publish to an Amazon SNS topic of another account, Amazon SES must have permission to access those resources. For information about granting permissions, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/receiving-email-permissions.html) .
> When you save your emails to an Amazon S3 bucket, the maximum email size (including headers) is 30 MB. Emails larger than that bounces.
For information about specifying Amazon S3 actions in receipt rules, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/receiving-email-action-s3.html) .
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" s3ActionProperty := &s3ActionProperty{ bucketName: jsii.String("bucketName"), // the properties below are optional kmsKeyArn: jsii.String("kmsKeyArn"), objectKeyPrefix: jsii.String("objectKeyPrefix"), topicArn: jsii.String("topicArn"), }
type CfnReceiptRule_SNSActionProperty ¶
type CfnReceiptRule_SNSActionProperty struct { // The encoding to use for the email within the Amazon SNS notification. // // UTF-8 is easier to use, but may not preserve all special characters when a message was encoded with a different encoding format. Base64 preserves all special characters. The default value is UTF-8. Encoding *string `json:"encoding" yaml:"encoding"` // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify. // // You can find the ARN of a topic by using the [ListTopics](https://docs.aws.amazon.com/sns/latest/api/API_ListTopics.html) operation in Amazon SNS. // // For more information about Amazon SNS topics, see the [Amazon SNS Developer Guide](https://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html) . TopicArn *string `json:"topicArn" yaml:"topicArn"` }
When included in a receipt rule, this action publishes a notification to Amazon Simple Notification Service (Amazon SNS).
This action includes a complete copy of the email content in the Amazon SNS notifications. Amazon SNS notifications for all other actions simply provide information about the email. They do not include the email content itself.
If you own the Amazon SNS topic, you don't need to do anything to give Amazon SES permission to publish emails to it. However, if you don't own the Amazon SNS topic, you need to attach a policy to the topic to give Amazon SES permissions to access it. For information about giving permissions, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/receiving-email-permissions.html) .
> You can only publish emails that are 150 KB or less (including the header) to Amazon SNS. Larger emails bounce. If you anticipate emails larger than 150 KB, use the S3 action instead.
For information about using a receipt rule to publish an Amazon SNS notification, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/receiving-email-action-sns.html) .
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" sNSActionProperty := &sNSActionProperty{ encoding: jsii.String("encoding"), topicArn: jsii.String("topicArn"), }
type CfnReceiptRule_StopActionProperty ¶
type CfnReceiptRule_StopActionProperty struct { // The scope of the StopAction. // // The only acceptable value is `RuleSet` . Scope *string `json:"scope" yaml:"scope"` // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the stop action is taken. // // You can find the ARN of a topic by using the [ListTopics](https://docs.aws.amazon.com/sns/latest/api/API_ListTopics.html) Amazon SNS operation. // // For more information about Amazon SNS topics, see the [Amazon SNS Developer Guide](https://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html) . TopicArn *string `json:"topicArn" yaml:"topicArn"` }
When included in a receipt rule, this action terminates the evaluation of the receipt rule set and, optionally, publishes a notification to Amazon Simple Notification Service (Amazon SNS).
For information about setting a stop action in a receipt rule, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/receiving-email-action-stop.html) .
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" stopActionProperty := &stopActionProperty{ scope: jsii.String("scope"), // the properties below are optional topicArn: jsii.String("topicArn"), }
type CfnReceiptRule_WorkmailActionProperty ¶
type CfnReceiptRule_WorkmailActionProperty struct { // The Amazon Resource Name (ARN) of the Amazon WorkMail organization. Amazon WorkMail ARNs use the following format:. // // `arn:aws:workmail:<region>:<awsAccountId>:organization/<workmailOrganizationId>` // // You can find the ID of your organization by using the [ListOrganizations](https://docs.aws.amazon.com/workmail/latest/APIReference/API_ListOrganizations.html) operation in Amazon WorkMail. Amazon WorkMail organization IDs begin with " `m-` ", followed by a string of alphanumeric characters. // // For information about Amazon WorkMail organizations, see the [Amazon WorkMail Administrator Guide](https://docs.aws.amazon.com/workmail/latest/adminguide/organizations_overview.html) . OrganizationArn *string `json:"organizationArn" yaml:"organizationArn"` // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the WorkMail action is called. // // You can find the ARN of a topic by using the [ListTopics](https://docs.aws.amazon.com/sns/latest/api/API_ListTopics.html) operation in Amazon SNS. // // For more information about Amazon SNS topics, see the [Amazon SNS Developer Guide](https://docs.aws.amazon.com/sns/latest/dg/CreateTopic.html) . TopicArn *string `json:"topicArn" yaml:"topicArn"` }
When included in a receipt rule, this action calls Amazon WorkMail and, optionally, publishes a notification to Amazon Simple Notification Service (Amazon SNS).
It usually isn't necessary to set this up manually, because Amazon WorkMail adds the rule automatically during its setup procedure.
For information using a receipt rule to call Amazon WorkMail, see the [Amazon SES Developer Guide](https://docs.aws.amazon.com/ses/latest/dg/receiving-email-action-workmail.html) .
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" workmailActionProperty := &workmailActionProperty{ organizationArn: jsii.String("organizationArn"), // the properties below are optional topicArn: jsii.String("topicArn"), }
type CfnTemplate ¶
type CfnTemplate interface { awscdk.CfnResource awscdk.IInspectable AttrId() *string // Options for this resource, such as condition, update policy etc. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. LogicalId() *string // The tree node. Node() constructs.Node // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). Stack() awscdk.Stack // The content of the email, composed of a subject line and either an HTML part or a text-only part. Template() interface{} SetTemplate(val interface{}) // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Overrides the auto-generated logical ID with a specific ID. OverrideLogicalId(newLogicalId *string) RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. ShouldSynthesize() *bool // Returns a string representation of this construct. // // Returns: a string representation of this resource. ToString() *string ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::SES::Template`.
Specifies an email template. Email templates enable you to send personalized email to one or more destinations in a single API operation.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" cfnTemplate := ses.NewCfnTemplate(this, jsii.String("MyCfnTemplate"), &cfnTemplateProps{ template: &templateProperty{ subjectPart: jsii.String("subjectPart"), // the properties below are optional htmlPart: jsii.String("htmlPart"), templateName: jsii.String("templateName"), textPart: jsii.String("textPart"), }, })
func NewCfnTemplate ¶
func NewCfnTemplate(scope constructs.Construct, id *string, props *CfnTemplateProps) CfnTemplate
Create a new `AWS::SES::Template`.
type CfnTemplateProps ¶
type CfnTemplateProps struct {
// The content of the email, composed of a subject line and either an HTML part or a text-only part.
Template interface{} `json:"template" yaml:"template"`
}
Properties for defining a `CfnTemplate`.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" cfnTemplateProps := &cfnTemplateProps{ template: &templateProperty{ subjectPart: jsii.String("subjectPart"), // the properties below are optional htmlPart: jsii.String("htmlPart"), templateName: jsii.String("templateName"), textPart: jsii.String("textPart"), }, }
type CfnTemplate_TemplateProperty ¶
type CfnTemplate_TemplateProperty struct { // The subject line of the email. SubjectPart *string `json:"subjectPart" yaml:"subjectPart"` // The HTML body of the email. HtmlPart *string `json:"htmlPart" yaml:"htmlPart"` // The name of the template. TemplateName *string `json:"templateName" yaml:"templateName"` // The email body that is visible to recipients whose email clients do not display HTML content. TextPart *string `json:"textPart" yaml:"textPart"` }
The content of the email, composed of a subject line and either an HTML part or a text-only part.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" templateProperty := &templateProperty{ subjectPart: jsii.String("subjectPart"), // the properties below are optional htmlPart: jsii.String("htmlPart"), templateName: jsii.String("templateName"), textPart: jsii.String("textPart"), }
type DropSpamReceiptRule ¶
type DropSpamReceiptRule interface { constructs.Construct // The tree node. Node() constructs.Node Rule() ReceiptRule // Returns a string representation of this construct. ToString() *string }
A rule added at the top of the rule set to drop spam/virus.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" var receiptRule receiptRule var receiptRuleAction iReceiptRuleAction var receiptRuleSet receiptRuleSet dropSpamReceiptRule := ses.NewDropSpamReceiptRule(this, jsii.String("MyDropSpamReceiptRule"), &dropSpamReceiptRuleProps{ ruleSet: receiptRuleSet, // the properties below are optional actions: []*iReceiptRuleAction{ receiptRuleAction, }, after: receiptRule, enabled: jsii.Boolean(false), receiptRuleName: jsii.String("receiptRuleName"), recipients: []*string{ jsii.String("recipients"), }, scanEnabled: jsii.Boolean(false), tlsPolicy: ses.tlsPolicy_OPTIONAL, })
func NewDropSpamReceiptRule ¶
func NewDropSpamReceiptRule(scope constructs.Construct, id *string, props *DropSpamReceiptRuleProps) DropSpamReceiptRule
type DropSpamReceiptRuleProps ¶
type DropSpamReceiptRuleProps struct { // An ordered list of actions to perform on messages that match at least one of the recipient email addresses or domains specified in the receipt rule. Actions *[]IReceiptRuleAction `json:"actions" yaml:"actions"` // An existing rule after which the new rule will be placed. After IReceiptRule `json:"after" yaml:"after"` // Whether the rule is active. Enabled *bool `json:"enabled" yaml:"enabled"` // The name for the rule. ReceiptRuleName *string `json:"receiptRuleName" yaml:"receiptRuleName"` // The recipient domains and email addresses that the receipt rule applies to. Recipients *[]*string `json:"recipients" yaml:"recipients"` // Whether to scan for spam and viruses. ScanEnabled *bool `json:"scanEnabled" yaml:"scanEnabled"` // Whether Amazon SES should require that incoming email is delivered over a connection encrypted with Transport Layer Security (TLS). TlsPolicy TlsPolicy `json:"tlsPolicy" yaml:"tlsPolicy"` // The name of the rule set that the receipt rule will be added to. RuleSet IReceiptRuleSet `json:"ruleSet" yaml:"ruleSet"` }
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" var receiptRule receiptRule var receiptRuleAction iReceiptRuleAction var receiptRuleSet receiptRuleSet dropSpamReceiptRuleProps := &dropSpamReceiptRuleProps{ ruleSet: receiptRuleSet, // the properties below are optional actions: []*iReceiptRuleAction{ receiptRuleAction, }, after: receiptRule, enabled: jsii.Boolean(false), receiptRuleName: jsii.String("receiptRuleName"), recipients: []*string{ jsii.String("recipients"), }, scanEnabled: jsii.Boolean(false), tlsPolicy: ses.tlsPolicy_OPTIONAL, }
type IReceiptRule ¶
type IReceiptRule interface { awscdk.IResource // The name of the receipt rule. ReceiptRuleName() *string }
A receipt rule.
func ReceiptRule_FromReceiptRuleName ¶
func ReceiptRule_FromReceiptRuleName(scope constructs.Construct, id *string, receiptRuleName *string) IReceiptRule
type IReceiptRuleAction ¶
type IReceiptRuleAction interface { // Returns the receipt rule action specification. Bind(receiptRule IReceiptRule) *ReceiptRuleActionConfig }
An abstract action for a receipt rule.
type IReceiptRuleSet ¶
type IReceiptRuleSet interface { awscdk.IResource // Adds a new receipt rule in this rule set. // // The new rule is added after // the last added rule unless `after` is specified. AddRule(id *string, options *ReceiptRuleOptions) ReceiptRule // The receipt rule set name. ReceiptRuleSetName() *string }
A receipt rule set.
func ReceiptRuleSet_FromReceiptRuleSetName ¶
func ReceiptRuleSet_FromReceiptRuleSetName(scope constructs.Construct, id *string, receiptRuleSetName *string) IReceiptRuleSet
Import an exported receipt rule set.
type LambdaActionConfig ¶
type LambdaActionConfig struct { // The Amazon Resource Name (ARN) of the AWS Lambda function. FunctionArn *string `json:"functionArn" yaml:"functionArn"` // The invocation type of the AWS Lambda function. InvocationType *string `json:"invocationType" yaml:"invocationType"` // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the Lambda action is executed. TopicArn *string `json:"topicArn" yaml:"topicArn"` }
LambdaAction configuration.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" lambdaActionConfig := &lambdaActionConfig{ functionArn: jsii.String("functionArn"), // the properties below are optional invocationType: jsii.String("invocationType"), topicArn: jsii.String("topicArn"), }
type ReceiptFilter ¶
type ReceiptFilter interface { awscdk.Resource // The environment this resource belongs to. // // For resources that are created and managed by the CDK // (generally, those created by creating new class instances like Role, Bucket, etc.), // this is always the same as the environment of the stack they belong to; // however, for imported resources // (those obtained from static methods like fromRoleArn, fromBucketName, etc.), // that might be different than the stack they were imported into. Env() *awscdk.ResourceEnvironment // The tree node. Node() constructs.Node // Returns a string-encoded token that resolves to the physical name that should be passed to the CloudFormation resource. // // This value will resolve to one of the following: // - a concrete value (e.g. `"my-awesome-bucket"`) // - `undefined`, when a name should be generated by CloudFormation // - a concrete name generated automatically during synthesis, in // cross-environment scenarios. PhysicalName() *string // The stack in which this resource is defined. Stack() awscdk.Stack // Apply the given removal policy to this resource. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). ApplyRemovalPolicy(policy awscdk.RemovalPolicy) GeneratePhysicalName() *string // Returns an environment-sensitive token that should be used for the resource's "ARN" attribute (e.g. `bucket.bucketArn`). // // Normally, this token will resolve to `arnAttr`, but if the resource is // referenced across environments, `arnComponents` will be used to synthesize // a concrete ARN with the resource's physical name. Make sure to reference // `this.physicalName` in `arnComponents`. GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string // Returns an environment-sensitive token that should be used for the resource's "name" attribute (e.g. `bucket.bucketName`). // // Normally, this token will resolve to `nameAttr`, but if the resource is // referenced across environments, it will be resolved to `this.physicalName`, // which will be a concrete name. GetResourceNameAttribute(nameAttr *string) *string // Returns a string representation of this construct. ToString() *string }
A receipt filter.
When instantiated without props, it creates a block all receipt filter.
Example:
ses.NewReceiptFilter(this, jsii.String("Filter"), &receiptFilterProps{ ip: jsii.String("1.2.3.4/16"), })
func NewReceiptFilter ¶
func NewReceiptFilter(scope constructs.Construct, id *string, props *ReceiptFilterProps) ReceiptFilter
type ReceiptFilterPolicy ¶
type ReceiptFilterPolicy string
The policy for the receipt filter.
const ( // Allow the ip address or range. ReceiptFilterPolicy_ALLOW ReceiptFilterPolicy = "ALLOW" // Block the ip address or range. ReceiptFilterPolicy_BLOCK ReceiptFilterPolicy = "BLOCK" )
type ReceiptFilterProps ¶
type ReceiptFilterProps struct { // The ip address or range to filter. Ip *string `json:"ip" yaml:"ip"` // The policy for the filter. Policy ReceiptFilterPolicy `json:"policy" yaml:"policy"` // The name for the receipt filter. ReceiptFilterName *string `json:"receiptFilterName" yaml:"receiptFilterName"` }
Construction properties for a ReceiptFilter.
Example:
ses.NewReceiptFilter(this, jsii.String("Filter"), &receiptFilterProps{ ip: jsii.String("1.2.3.4/16"), })
type ReceiptRule ¶
type ReceiptRule interface { awscdk.Resource IReceiptRule // The environment this resource belongs to. // // For resources that are created and managed by the CDK // (generally, those created by creating new class instances like Role, Bucket, etc.), // this is always the same as the environment of the stack they belong to; // however, for imported resources // (those obtained from static methods like fromRoleArn, fromBucketName, etc.), // that might be different than the stack they were imported into. Env() *awscdk.ResourceEnvironment // The tree node. Node() constructs.Node // Returns a string-encoded token that resolves to the physical name that should be passed to the CloudFormation resource. // // This value will resolve to one of the following: // - a concrete value (e.g. `"my-awesome-bucket"`) // - `undefined`, when a name should be generated by CloudFormation // - a concrete name generated automatically during synthesis, in // cross-environment scenarios. PhysicalName() *string // The name of the receipt rule. ReceiptRuleName() *string // The stack in which this resource is defined. Stack() awscdk.Stack // Adds an action to this receipt rule. AddAction(action IReceiptRuleAction) // Apply the given removal policy to this resource. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). ApplyRemovalPolicy(policy awscdk.RemovalPolicy) GeneratePhysicalName() *string // Returns an environment-sensitive token that should be used for the resource's "ARN" attribute (e.g. `bucket.bucketArn`). // // Normally, this token will resolve to `arnAttr`, but if the resource is // referenced across environments, `arnComponents` will be used to synthesize // a concrete ARN with the resource's physical name. Make sure to reference // `this.physicalName` in `arnComponents`. GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string // Returns an environment-sensitive token that should be used for the resource's "name" attribute (e.g. `bucket.bucketName`). // // Normally, this token will resolve to `nameAttr`, but if the resource is // referenced across environments, it will be resolved to `this.physicalName`, // which will be a concrete name. GetResourceNameAttribute(nameAttr *string) *string // Returns a string representation of this construct. ToString() *string }
A new receipt rule.
Example:
ruleSet := ses.NewReceiptRuleSet(this, jsii.String("RuleSet")) awsRule := ruleSet.addRule(jsii.String("Aws"), &receiptRuleOptions{ recipients: []*string{ jsii.String("aws.com"), }, })
func NewReceiptRule ¶
func NewReceiptRule(scope constructs.Construct, id *string, props *ReceiptRuleProps) ReceiptRule
type ReceiptRuleActionConfig ¶
type ReceiptRuleActionConfig struct { // Adds a header to the received email. AddHeaderAction *AddHeaderActionConfig `json:"addHeaderAction" yaml:"addHeaderAction"` // Rejects the received email by returning a bounce response to the sender and, optionally, publishes a notification to Amazon SNS. BounceAction *BounceActionConfig `json:"bounceAction" yaml:"bounceAction"` // Calls an AWS Lambda function, and optionally, publishes a notification to Amazon SNS. LambdaAction *LambdaActionConfig `json:"lambdaAction" yaml:"lambdaAction"` // Saves the received message to an Amazon S3 bucket and, optionally, publishes a notification to Amazon SNS. S3Action *S3ActionConfig `json:"s3Action" yaml:"s3Action"` // Publishes the email content within a notification to Amazon SNS. SnsAction *SNSActionConfig `json:"snsAction" yaml:"snsAction"` // Terminates the evaluation of the receipt rule set and optionally publishes a notification to Amazon SNS. StopAction *StopActionConfig `json:"stopAction" yaml:"stopAction"` // Calls Amazon WorkMail and, optionally, publishes a notification to Amazon SNS. WorkmailAction *WorkmailActionConfig `json:"workmailAction" yaml:"workmailAction"` }
Properties for a receipt rule action.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" receiptRuleActionConfig := &receiptRuleActionConfig{ addHeaderAction: &addHeaderActionConfig{ headerName: jsii.String("headerName"), headerValue: jsii.String("headerValue"), }, bounceAction: &bounceActionConfig{ message: jsii.String("message"), sender: jsii.String("sender"), smtpReplyCode: jsii.String("smtpReplyCode"), // the properties below are optional statusCode: jsii.String("statusCode"), topicArn: jsii.String("topicArn"), }, lambdaAction: &lambdaActionConfig{ functionArn: jsii.String("functionArn"), // the properties below are optional invocationType: jsii.String("invocationType"), topicArn: jsii.String("topicArn"), }, s3Action: &s3ActionConfig{ bucketName: jsii.String("bucketName"), // the properties below are optional kmsKeyArn: jsii.String("kmsKeyArn"), objectKeyPrefix: jsii.String("objectKeyPrefix"), topicArn: jsii.String("topicArn"), }, snsAction: &sNSActionConfig{ encoding: jsii.String("encoding"), topicArn: jsii.String("topicArn"), }, stopAction: &stopActionConfig{ scope: jsii.String("scope"), // the properties below are optional topicArn: jsii.String("topicArn"), }, workmailAction: &workmailActionConfig{ organizationArn: jsii.String("organizationArn"), // the properties below are optional topicArn: jsii.String("topicArn"), }, }
type ReceiptRuleOptions ¶
type ReceiptRuleOptions struct { // An ordered list of actions to perform on messages that match at least one of the recipient email addresses or domains specified in the receipt rule. Actions *[]IReceiptRuleAction `json:"actions" yaml:"actions"` // An existing rule after which the new rule will be placed. After IReceiptRule `json:"after" yaml:"after"` // Whether the rule is active. Enabled *bool `json:"enabled" yaml:"enabled"` // The name for the rule. ReceiptRuleName *string `json:"receiptRuleName" yaml:"receiptRuleName"` // The recipient domains and email addresses that the receipt rule applies to. Recipients *[]*string `json:"recipients" yaml:"recipients"` // Whether to scan for spam and viruses. ScanEnabled *bool `json:"scanEnabled" yaml:"scanEnabled"` // Whether Amazon SES should require that incoming email is delivered over a connection encrypted with Transport Layer Security (TLS). TlsPolicy TlsPolicy `json:"tlsPolicy" yaml:"tlsPolicy"` }
Options to add a receipt rule to a receipt rule set.
Example:
ruleSet := ses.NewReceiptRuleSet(this, jsii.String("RuleSet")) awsRule := ruleSet.addRule(jsii.String("Aws"), &receiptRuleOptions{ recipients: []*string{ jsii.String("aws.com"), }, })
type ReceiptRuleProps ¶
type ReceiptRuleProps struct { // An ordered list of actions to perform on messages that match at least one of the recipient email addresses or domains specified in the receipt rule. Actions *[]IReceiptRuleAction `json:"actions" yaml:"actions"` // An existing rule after which the new rule will be placed. After IReceiptRule `json:"after" yaml:"after"` // Whether the rule is active. Enabled *bool `json:"enabled" yaml:"enabled"` // The name for the rule. ReceiptRuleName *string `json:"receiptRuleName" yaml:"receiptRuleName"` // The recipient domains and email addresses that the receipt rule applies to. Recipients *[]*string `json:"recipients" yaml:"recipients"` // Whether to scan for spam and viruses. ScanEnabled *bool `json:"scanEnabled" yaml:"scanEnabled"` // Whether Amazon SES should require that incoming email is delivered over a connection encrypted with Transport Layer Security (TLS). TlsPolicy TlsPolicy `json:"tlsPolicy" yaml:"tlsPolicy"` // The name of the rule set that the receipt rule will be added to. RuleSet IReceiptRuleSet `json:"ruleSet" yaml:"ruleSet"` }
Construction properties for a ReceiptRule.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" var receiptRule receiptRule var receiptRuleAction iReceiptRuleAction var receiptRuleSet receiptRuleSet receiptRuleProps := &receiptRuleProps{ ruleSet: receiptRuleSet, // the properties below are optional actions: []*iReceiptRuleAction{ receiptRuleAction, }, after: receiptRule, enabled: jsii.Boolean(false), receiptRuleName: jsii.String("receiptRuleName"), recipients: []*string{ jsii.String("recipients"), }, scanEnabled: jsii.Boolean(false), tlsPolicy: ses.tlsPolicy_OPTIONAL, }
type ReceiptRuleSet ¶
type ReceiptRuleSet interface { awscdk.Resource IReceiptRuleSet // The environment this resource belongs to. // // For resources that are created and managed by the CDK // (generally, those created by creating new class instances like Role, Bucket, etc.), // this is always the same as the environment of the stack they belong to; // however, for imported resources // (those obtained from static methods like fromRoleArn, fromBucketName, etc.), // that might be different than the stack they were imported into. Env() *awscdk.ResourceEnvironment // The tree node. Node() constructs.Node // Returns a string-encoded token that resolves to the physical name that should be passed to the CloudFormation resource. // // This value will resolve to one of the following: // - a concrete value (e.g. `"my-awesome-bucket"`) // - `undefined`, when a name should be generated by CloudFormation // - a concrete name generated automatically during synthesis, in // cross-environment scenarios. PhysicalName() *string // The receipt rule set name. ReceiptRuleSetName() *string // The stack in which this resource is defined. Stack() awscdk.Stack // Adds a drop spam rule. AddDropSpamRule() // Adds a new receipt rule in this rule set. // // The new rule is added after // the last added rule unless `after` is specified. AddRule(id *string, options *ReceiptRuleOptions) ReceiptRule // Apply the given removal policy to this resource. // // The Removal Policy controls what happens to this resource when it stops // being managed by CloudFormation, either because you've removed it from the // CDK application or because you've made a change that requires the resource // to be replaced. // // The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS // account for data recovery and cleanup later (`RemovalPolicy.RETAIN`). ApplyRemovalPolicy(policy awscdk.RemovalPolicy) GeneratePhysicalName() *string // Returns an environment-sensitive token that should be used for the resource's "ARN" attribute (e.g. `bucket.bucketArn`). // // Normally, this token will resolve to `arnAttr`, but if the resource is // referenced across environments, `arnComponents` will be used to synthesize // a concrete ARN with the resource's physical name. Make sure to reference // `this.physicalName` in `arnComponents`. GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string // Returns an environment-sensitive token that should be used for the resource's "name" attribute (e.g. `bucket.bucketName`). // // Normally, this token will resolve to `nameAttr`, but if the resource is // referenced across environments, it will be resolved to `this.physicalName`, // which will be a concrete name. GetResourceNameAttribute(nameAttr *string) *string // Returns a string representation of this construct. ToString() *string }
A new receipt rule set.
Example:
ruleSet := ses.NewReceiptRuleSet(this, jsii.String("RuleSet")) awsRule := ruleSet.addRule(jsii.String("Aws"), &receiptRuleOptions{ recipients: []*string{ jsii.String("aws.com"), }, })
func NewReceiptRuleSet ¶
func NewReceiptRuleSet(scope constructs.Construct, id *string, props *ReceiptRuleSetProps) ReceiptRuleSet
type ReceiptRuleSetProps ¶
type ReceiptRuleSetProps struct { // Whether to add a first rule to stop processing messages that have at least one spam indicator. DropSpam *bool `json:"dropSpam" yaml:"dropSpam"` // The name for the receipt rule set. ReceiptRuleSetName *string `json:"receiptRuleSetName" yaml:"receiptRuleSetName"` // The list of rules to add to this rule set. // // Rules are added in the same // order as they appear in the list. Rules *[]*ReceiptRuleOptions `json:"rules" yaml:"rules"` }
Construction properties for a ReceiptRuleSet.
Example:
import s3 "github.com/aws/aws-cdk-go/awscdk"import actions "github.com/aws/aws-cdk-go/awscdk" bucket := s3.NewBucket(this, jsii.String("Bucket")) topic := sns.NewTopic(this, jsii.String("Topic")) ses.NewReceiptRuleSet(this, jsii.String("RuleSet"), &receiptRuleSetProps{ rules: []receiptRuleOptions{ &receiptRuleOptions{ recipients: []*string{ jsii.String("hello@aws.com"), }, actions: []iReceiptRuleAction{ actions.NewAddHeader(&addHeaderProps{ name: jsii.String("X-Special-Header"), value: jsii.String("aws"), }), actions.NewS3(&s3Props{ bucket: bucket, objectKeyPrefix: jsii.String("emails/"), topic: topic, }), }, }, &receiptRuleOptions{ recipients: []*string{ jsii.String("aws.com"), }, actions: []*iReceiptRuleAction{ actions.NewSns(&snsProps{ topic: topic, }), }, }, }, })
type S3ActionConfig ¶
type S3ActionConfig struct { // The name of the Amazon S3 bucket that you want to send incoming mail to. BucketName *string `json:"bucketName" yaml:"bucketName"` // The customer master key that Amazon SES should use to encrypt your emails before saving them to the Amazon S3 bucket. KmsKeyArn *string `json:"kmsKeyArn" yaml:"kmsKeyArn"` // The key prefix of the Amazon S3 bucket. ObjectKeyPrefix *string `json:"objectKeyPrefix" yaml:"objectKeyPrefix"` // The ARN of the Amazon SNS topic to notify when the message is saved to the Amazon S3 bucket. TopicArn *string `json:"topicArn" yaml:"topicArn"` }
S3Action configuration.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" s3ActionConfig := &s3ActionConfig{ bucketName: jsii.String("bucketName"), // the properties below are optional kmsKeyArn: jsii.String("kmsKeyArn"), objectKeyPrefix: jsii.String("objectKeyPrefix"), topicArn: jsii.String("topicArn"), }
type SNSActionConfig ¶
type SNSActionConfig struct { // The encoding to use for the email within the Amazon SNS notification. Encoding *string `json:"encoding" yaml:"encoding"` // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify. TopicArn *string `json:"topicArn" yaml:"topicArn"` }
SNSAction configuration.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" sNSActionConfig := &sNSActionConfig{ encoding: jsii.String("encoding"), topicArn: jsii.String("topicArn"), }
type StopActionConfig ¶
type StopActionConfig struct { // The scope of the StopAction. // // The only acceptable value is RuleSet. Scope *string `json:"scope" yaml:"scope"` // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the stop action is taken. TopicArn *string `json:"topicArn" yaml:"topicArn"` }
StopAction configuration.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" stopActionConfig := &stopActionConfig{ scope: jsii.String("scope"), // the properties below are optional topicArn: jsii.String("topicArn"), }
type WorkmailActionConfig ¶
type WorkmailActionConfig struct { // The Amazon Resource Name (ARN) of the Amazon WorkMail organization. OrganizationArn *string `json:"organizationArn" yaml:"organizationArn"` // The Amazon Resource Name (ARN) of the Amazon SNS topic to notify when the WorkMail action is called. TopicArn *string `json:"topicArn" yaml:"topicArn"` }
WorkmailAction configuration.
Example:
import awscdk "github.com/aws/aws-cdk-go/awscdk"import ses "github.com/aws/aws-cdk-go/awscdk/aws_ses" workmailActionConfig := &workmailActionConfig{ organizationArn: jsii.String("organizationArn"), // the properties below are optional topicArn: jsii.String("topicArn"), }