Class: AWSCDK::SES::CfnReceiptRule::RuleProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
ses/cfn_receipt_rule.rb

Overview

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 .

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(actions: nil, enabled: nil, name: nil, recipients: nil, scan_enabled: nil, tls_policy: nil) ⇒ RuleProperty

Returns a new instance of RuleProperty.

Parameters:

  • actions (AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::SES::CfnReceiptRule::ActionProperty>, nil) (defaults to: nil)

    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.

  • enabled (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    If true , the receipt rule is active.

  • name (String, nil) (defaults to: nil)

    The name of the receipt rule. The name must meet the following requirements:.

  • recipients (Array<String>, nil) (defaults to: nil)

    The recipient domains and email addresses that the receipt rule applies to.

  • scan_enabled (Boolean, AWSCDK::IResolvable, nil) (defaults to: nil)

    If true , then messages that this receipt rule applies to are scanned for spam and viruses.

  • tls_policy (String, nil) (defaults to: nil)

    Specifies whether Amazon SES should require that incoming email is delivered over a connection encrypted with Transport Layer Security (TLS).



889
890
891
892
893
894
895
896
897
898
899
900
901
902
# File 'ses/cfn_receipt_rule.rb', line 889

def initialize(actions: nil, enabled: nil, name: nil, recipients: nil, scan_enabled: nil, tls_policy: nil)
  @actions = actions
  Jsii::Type.check_type(@actions, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc2VzLkNmblJlY2VpcHRSdWxlLkFjdGlvblByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "actions") unless @actions.nil?
  @enabled = enabled
  Jsii::Type.check_type(@enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "enabled") unless @enabled.nil?
  @name = name
  Jsii::Type.check_type(@name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name") unless @name.nil?
  @recipients = recipients
  Jsii::Type.check_type(@recipients, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "recipients") unless @recipients.nil?
  @scan_enabled = scan_enabled
  Jsii::Type.check_type(@scan_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "scanEnabled") unless @scan_enabled.nil?
  @tls_policy = tls_policy
  Jsii::Type.check_type(@tls_policy, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "tlsPolicy") unless @tls_policy.nil?
end

Instance Attribute Details

#actionsAWSCDK::IResolvable, ... (readonly)

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.



908
909
910
# File 'ses/cfn_receipt_rule.rb', line 908

def actions
  @actions
end

#enabledBoolean, ... (readonly)

If true , the receipt rule is active.

The default value is false .



915
916
917
# File 'ses/cfn_receipt_rule.rb', line 915

def enabled
  @enabled
end

#nameString? (readonly)

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.


924
925
926
# File 'ses/cfn_receipt_rule.rb', line 924

def name
  @name
end

#recipientsArray<String>? (readonly)

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.



931
932
933
# File 'ses/cfn_receipt_rule.rb', line 931

def recipients
  @recipients
end

#scan_enabledBoolean, ... (readonly)

If true , then messages that this receipt rule applies to are scanned for spam and viruses.

The default value is false .



938
939
940
# File 'ses/cfn_receipt_rule.rb', line 938

def scan_enabled
  @scan_enabled
end

#tls_policyString? (readonly)

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 .

Valid Values: Require | Optional



947
948
949
# File 'ses/cfn_receipt_rule.rb', line 947

def tls_policy
  @tls_policy
end

Class Method Details

.jsii_propertiesObject



949
950
951
952
953
954
955
956
957
958
# File 'ses/cfn_receipt_rule.rb', line 949

def self.jsii_properties
  {
    :actions => "actions",
    :enabled => "enabled",
    :name => "name",
    :recipients => "recipients",
    :scan_enabled => "scanEnabled",
    :tls_policy => "tlsPolicy",
  }
end

Instance Method Details

#to_jsiiObject



960
961
962
963
964
965
966
967
968
969
970
971
# File 'ses/cfn_receipt_rule.rb', line 960

def to_jsii
  result = {}
  result.merge!({
    "actions" => @actions,
    "enabled" => @enabled,
    "name" => @name,
    "recipients" => @recipients,
    "scanEnabled" => @scan_enabled,
    "tlsPolicy" => @tls_policy,
  })
  result.compact
end