Interface CfnMailManagerRuleSet.IRuleProperty
A rule contains conditions, "unless conditions" and actions.
Namespace: Amazon.CDK.AWS.SES
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public interface CfnMailManagerRuleSet.IRuleProperty
Syntax (vb)
Public Interface CfnMailManagerRuleSet.IRuleProperty
Remarks
For each envelope recipient of an email, if all conditions match and none of the "unless conditions" match, then all of the actions are executed sequentially. If no conditions are provided, the rule always applies and the actions are implicitly executed. If only "unless conditions" are provided, the rule applies if the email does not match the evaluation of the "unless conditions".
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.SES;
var drop;
var ruleProperty = new RuleProperty {
Actions = new [] { new RuleActionProperty {
AddHeader = new AddHeaderActionProperty {
HeaderName = "headerName",
HeaderValue = "headerValue"
},
Archive = new ArchiveActionProperty {
TargetArchive = "targetArchive",
// the properties below are optional
ActionFailurePolicy = "actionFailurePolicy"
},
DeliverToMailbox = new DeliverToMailboxActionProperty {
MailboxArn = "mailboxArn",
RoleArn = "roleArn",
// the properties below are optional
ActionFailurePolicy = "actionFailurePolicy"
},
DeliverToQBusiness = new DeliverToQBusinessActionProperty {
ApplicationId = "applicationId",
IndexId = "indexId",
RoleArn = "roleArn",
// the properties below are optional
ActionFailurePolicy = "actionFailurePolicy"
},
Drop = drop,
PublishToSns = new SnsActionProperty {
RoleArn = "roleArn",
TopicArn = "topicArn",
// the properties below are optional
ActionFailurePolicy = "actionFailurePolicy",
Encoding = "encoding",
PayloadType = "payloadType"
},
Relay = new RelayActionProperty {
Relay = "relay",
// the properties below are optional
ActionFailurePolicy = "actionFailurePolicy",
MailFrom = "mailFrom"
},
ReplaceRecipient = new ReplaceRecipientActionProperty {
ReplaceWith = new [] { "replaceWith" }
},
Send = new SendActionProperty {
RoleArn = "roleArn",
// the properties below are optional
ActionFailurePolicy = "actionFailurePolicy"
},
WriteToS3 = new S3ActionProperty {
RoleArn = "roleArn",
S3Bucket = "s3Bucket",
// the properties below are optional
ActionFailurePolicy = "actionFailurePolicy",
S3Prefix = "s3Prefix",
S3SseKmsKeyId = "s3SseKmsKeyId"
}
} },
// the properties below are optional
Conditions = new [] { new RuleConditionProperty {
BooleanExpression = new RuleBooleanExpressionProperty {
Evaluate = new RuleBooleanToEvaluateProperty {
Analysis = new AnalysisProperty {
Analyzer = "analyzer",
ResultField = "resultField"
},
Attribute = "attribute",
IsInAddressList = new RuleIsInAddressListProperty {
AddressLists = new [] { "addressLists" },
Attribute = "attribute"
}
},
Operator = "operator"
},
DmarcExpression = new RuleDmarcExpressionProperty {
Operator = "operator",
Values = new [] { "values" }
},
IpExpression = new RuleIpExpressionProperty {
Evaluate = new RuleIpToEvaluateProperty {
Attribute = "attribute"
},
Operator = "operator",
Values = new [] { "values" }
},
NumberExpression = new RuleNumberExpressionProperty {
Evaluate = new RuleNumberToEvaluateProperty {
Attribute = "attribute"
},
Operator = "operator",
Value = 123
},
StringExpression = new RuleStringExpressionProperty {
Evaluate = new RuleStringToEvaluateProperty {
Analysis = new AnalysisProperty {
Analyzer = "analyzer",
ResultField = "resultField"
},
Attribute = "attribute",
MimeHeaderAttribute = "mimeHeaderAttribute"
},
Operator = "operator",
Values = new [] { "values" }
},
VerdictExpression = new RuleVerdictExpressionProperty {
Evaluate = new RuleVerdictToEvaluateProperty {
Analysis = new AnalysisProperty {
Analyzer = "analyzer",
ResultField = "resultField"
},
Attribute = "attribute"
},
Operator = "operator",
Values = new [] { "values" }
}
} },
Name = "name",
Unless = new [] { new RuleConditionProperty {
BooleanExpression = new RuleBooleanExpressionProperty {
Evaluate = new RuleBooleanToEvaluateProperty {
Analysis = new AnalysisProperty {
Analyzer = "analyzer",
ResultField = "resultField"
},
Attribute = "attribute",
IsInAddressList = new RuleIsInAddressListProperty {
AddressLists = new [] { "addressLists" },
Attribute = "attribute"
}
},
Operator = "operator"
},
DmarcExpression = new RuleDmarcExpressionProperty {
Operator = "operator",
Values = new [] { "values" }
},
IpExpression = new RuleIpExpressionProperty {
Evaluate = new RuleIpToEvaluateProperty {
Attribute = "attribute"
},
Operator = "operator",
Values = new [] { "values" }
},
NumberExpression = new RuleNumberExpressionProperty {
Evaluate = new RuleNumberToEvaluateProperty {
Attribute = "attribute"
},
Operator = "operator",
Value = 123
},
StringExpression = new RuleStringExpressionProperty {
Evaluate = new RuleStringToEvaluateProperty {
Analysis = new AnalysisProperty {
Analyzer = "analyzer",
ResultField = "resultField"
},
Attribute = "attribute",
MimeHeaderAttribute = "mimeHeaderAttribute"
},
Operator = "operator",
Values = new [] { "values" }
},
VerdictExpression = new RuleVerdictExpressionProperty {
Evaluate = new RuleVerdictToEvaluateProperty {
Analysis = new AnalysisProperty {
Analyzer = "analyzer",
ResultField = "resultField"
},
Attribute = "attribute"
},
Operator = "operator",
Values = new [] { "values" }
}
} }
};
Synopsis
Properties
Actions | The list of actions to execute when the conditions match the incoming email, and none of the "unless conditions" match. |
Conditions | The conditions of this rule. |
Name | The user-friendly name of the rule. |
Unless | The "unless conditions" of this rule. |
Properties
Actions
The list of actions to execute when the conditions match the incoming email, and none of the "unless conditions" match.
object Actions { get; }
Property Value
Remarks
Conditions
The conditions of this rule.
object? Conditions { get; }
Property Value
Remarks
All conditions must match the email for the actions to be executed. An empty list of conditions means that all emails match, but are still subject to any "unless conditions"
Name
The user-friendly name of the rule.
string? Name { get; }
Property Value
Remarks
Unless
The "unless conditions" of this rule.
object? Unless { get; }
Property Value
Remarks
None of the conditions can match the email for the actions to be executed. If any of these conditions do match the email, then the actions are not executed.