aws-sdk-ses 1.68.0 → 1.69.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 73cb7b7a6dcdec37ab4846f64e4916d4f37e877b03b1ba99b81d14e0903384e8
4
- data.tar.gz: c13392722f7f3e59bf064431dcadcb87e611a9138c62e7c602545ce83c0f9b83
3
+ metadata.gz: aa415042091913ee860f1aa590b1cc53dfc910eeca939500f96f32acb3ac621b
4
+ data.tar.gz: c3723cd27014003fea55fdcc2c9a8ce6e4699eccb92de63552408381c52ba3dd
5
5
  SHA512:
6
- metadata.gz: 96e8f866de133ab939db4b69d111b4487631ea67dca7f051c43e0b556dce035a73be5da71c7fb3427f6e880ca9b955bee7d6ffac4b11b67117321334ffe0c44e
7
- data.tar.gz: a66ceea91aaab8745ec49f1d6e04e348ebf7da64ebe3b6ef9b3928a94cfb459b5b3be5bbce8e6aefa55698a50214f26ec5558dc46ab3f8fb3424941111498909
6
+ metadata.gz: d2082083f7329ad579bb12c3d4310b1ca6eeef7740382700929b70fd117fd5733e899ba77ab02f4abed6ad2cc1997ecb3b1aeeb0cef30a99f6f78fe9e68dba72
7
+ data.tar.gz: cc2afd939028930c374727ae2f4feac24c4b2c81c26e3fda221879b8f739fcf525e6060f91b41dcc0beb1ad1bb509cc4c1017de05030736e2e4f954b2bf8d608
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.69.0 (2024-08-21)
5
+ ------------------
6
+
7
+ * Feature - Enable email receiving customers to provide SES with access to their S3 buckets via an IAM role for "Deliver to S3 Action"
8
+
4
9
  1.68.0 (2024-07-08)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.68.0
1
+ 1.69.0
@@ -808,6 +808,7 @@ module Aws::SES
808
808
  # bucket_name: "S3BucketName", # required
809
809
  # object_key_prefix: "S3KeyPrefix",
810
810
  # kms_key_arn: "AmazonResourceName",
811
+ # iam_role_arn: "IAMRoleARN",
811
812
  # },
812
813
  # bounce_action: {
813
814
  # topic_arn: "AmazonResourceName",
@@ -1418,6 +1419,7 @@ module Aws::SES
1418
1419
  # resp.rules[0].actions[0].s3_action.bucket_name #=> String
1419
1420
  # resp.rules[0].actions[0].s3_action.object_key_prefix #=> String
1420
1421
  # resp.rules[0].actions[0].s3_action.kms_key_arn #=> String
1422
+ # resp.rules[0].actions[0].s3_action.iam_role_arn #=> String
1421
1423
  # resp.rules[0].actions[0].bounce_action.topic_arn #=> String
1422
1424
  # resp.rules[0].actions[0].bounce_action.smtp_reply_code #=> String
1423
1425
  # resp.rules[0].actions[0].bounce_action.status_code #=> String
@@ -1574,6 +1576,7 @@ module Aws::SES
1574
1576
  # resp.rule.actions[0].s3_action.bucket_name #=> String
1575
1577
  # resp.rule.actions[0].s3_action.object_key_prefix #=> String
1576
1578
  # resp.rule.actions[0].s3_action.kms_key_arn #=> String
1579
+ # resp.rule.actions[0].s3_action.iam_role_arn #=> String
1577
1580
  # resp.rule.actions[0].bounce_action.topic_arn #=> String
1578
1581
  # resp.rule.actions[0].bounce_action.smtp_reply_code #=> String
1579
1582
  # resp.rule.actions[0].bounce_action.status_code #=> String
@@ -1674,6 +1677,7 @@ module Aws::SES
1674
1677
  # resp.rules[0].actions[0].s3_action.bucket_name #=> String
1675
1678
  # resp.rules[0].actions[0].s3_action.object_key_prefix #=> String
1676
1679
  # resp.rules[0].actions[0].s3_action.kms_key_arn #=> String
1680
+ # resp.rules[0].actions[0].s3_action.iam_role_arn #=> String
1677
1681
  # resp.rules[0].actions[0].bounce_action.topic_arn #=> String
1678
1682
  # resp.rules[0].actions[0].bounce_action.smtp_reply_code #=> String
1679
1683
  # resp.rules[0].actions[0].bounce_action.status_code #=> String
@@ -3159,7 +3163,7 @@ module Aws::SES
3159
3163
  # @option params [String] :template_arn
3160
3164
  # The ARN of the template to use when sending this email.
3161
3165
  #
3162
- # @option params [String] :default_template_data
3166
+ # @option params [required, String] :default_template_data
3163
3167
  # A list of replacement values to apply to the template when replacement
3164
3168
  # data is not specified in a Destination object. These values act as a
3165
3169
  # default or fallback option when no other data is available.
@@ -3194,7 +3198,7 @@ module Aws::SES
3194
3198
  # ],
3195
3199
  # template: "TemplateName", # required
3196
3200
  # template_arn: "AmazonResourceName",
3197
- # default_template_data: "TemplateData",
3201
+ # default_template_data: "TemplateData", # required
3198
3202
  # destinations: [ # required
3199
3203
  # {
3200
3204
  # destination: { # required
@@ -4855,6 +4859,7 @@ module Aws::SES
4855
4859
  # bucket_name: "S3BucketName", # required
4856
4860
  # object_key_prefix: "S3KeyPrefix",
4857
4861
  # kms_key_arn: "AmazonResourceName",
4862
+ # iam_role_arn: "IAMRoleARN",
4858
4863
  # },
4859
4864
  # bounce_action: {
4860
4865
  # topic_arn: "AmazonResourceName",
@@ -5151,7 +5156,7 @@ module Aws::SES
5151
5156
  params: params,
5152
5157
  config: config)
5153
5158
  context[:gem_name] = 'aws-sdk-ses'
5154
- context[:gem_version] = '1.68.0'
5159
+ context[:gem_version] = '1.69.0'
5155
5160
  Seahorse::Client::Request.new(handlers, context)
5156
5161
  end
5157
5162
 
@@ -149,6 +149,7 @@ module Aws::SES
149
149
  HeaderName = Shapes::StringShape.new(name: 'HeaderName')
150
150
  HeaderValue = Shapes::StringShape.new(name: 'HeaderValue')
151
151
  HtmlPart = Shapes::StringShape.new(name: 'HtmlPart')
152
+ IAMRoleARN = Shapes::StringShape.new(name: 'IAMRoleARN')
152
153
  Identity = Shapes::StringShape.new(name: 'Identity')
153
154
  IdentityDkimAttributes = Shapes::StructureShape.new(name: 'IdentityDkimAttributes')
154
155
  IdentityList = Shapes::ListShape.new(name: 'IdentityList')
@@ -905,6 +906,7 @@ module Aws::SES
905
906
  S3Action.add_member(:bucket_name, Shapes::ShapeRef.new(shape: S3BucketName, required: true, location_name: "BucketName"))
906
907
  S3Action.add_member(:object_key_prefix, Shapes::ShapeRef.new(shape: S3KeyPrefix, location_name: "ObjectKeyPrefix"))
907
908
  S3Action.add_member(:kms_key_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, location_name: "KmsKeyArn"))
909
+ S3Action.add_member(:iam_role_arn, Shapes::ShapeRef.new(shape: IAMRoleARN, location_name: "IamRoleArn"))
908
910
  S3Action.struct_class = Types::S3Action
909
911
 
910
912
  SNSAction.add_member(:topic_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location_name: "TopicArn"))
@@ -934,7 +936,7 @@ module Aws::SES
934
936
  SendBulkTemplatedEmailRequest.add_member(:default_tags, Shapes::ShapeRef.new(shape: MessageTagList, location_name: "DefaultTags"))
935
937
  SendBulkTemplatedEmailRequest.add_member(:template, Shapes::ShapeRef.new(shape: TemplateName, required: true, location_name: "Template"))
936
938
  SendBulkTemplatedEmailRequest.add_member(:template_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, location_name: "TemplateArn"))
937
- SendBulkTemplatedEmailRequest.add_member(:default_template_data, Shapes::ShapeRef.new(shape: TemplateData, location_name: "DefaultTemplateData"))
939
+ SendBulkTemplatedEmailRequest.add_member(:default_template_data, Shapes::ShapeRef.new(shape: TemplateData, required: true, location_name: "DefaultTemplateData"))
938
940
  SendBulkTemplatedEmailRequest.add_member(:destinations, Shapes::ShapeRef.new(shape: BulkEmailDestinationList, required: true, location_name: "Destinations"))
939
941
  SendBulkTemplatedEmailRequest.struct_class = Types::SendBulkTemplatedEmailRequest
940
942
 
@@ -3525,28 +3525,28 @@ module Aws::SES
3525
3525
  # @return [String]
3526
3526
  #
3527
3527
  # @!attribute [rw] kms_key_arn
3528
- # The customer master key that Amazon SES should use to encrypt your
3528
+ # The customer managed key that Amazon SES should use to encrypt your
3529
3529
  # emails before saving them to the Amazon S3 bucket. You can use the
3530
- # default master key or a custom master key that you created in Amazon
3531
- # Web Services KMS as follows:
3530
+ # default managed key or a custom managed key that you created in
3531
+ # Amazon Web Services KMS as follows:
3532
3532
  #
3533
- # * To use the default master key, provide an ARN in the form of
3533
+ # * To use the default managed key, provide an ARN in the form of
3534
3534
  # `arn:aws:kms:REGION:ACCOUNT-ID-WITHOUT-HYPHENS:alias/aws/ses`. For
3535
3535
  # example, if your Amazon Web Services account ID is 123456789012
3536
- # and you want to use the default master key in the US West (Oregon)
3537
- # Region, the ARN of the default master key would be
3536
+ # and you want to use the default managed key in the US West
3537
+ # (Oregon) Region, the ARN of the default master key would be
3538
3538
  # `arn:aws:kms:us-west-2:123456789012:alias/aws/ses`. If you use the
3539
- # default master key, you don't need to perform any extra steps to
3539
+ # default managed key, you don't need to perform any extra steps to
3540
3540
  # give Amazon SES permission to use the key.
3541
3541
  #
3542
- # * To use a custom master key that you created in Amazon Web Services
3543
- # KMS, provide the ARN of the master key and ensure that you add a
3544
- # statement to your key's policy to give Amazon SES permission to
3545
- # use it. For more information about giving permissions, see the
3546
- # [Amazon SES Developer Guide][1].
3542
+ # * To use a custom managed key that you created in Amazon Web
3543
+ # Services KMS, provide the ARN of the managed key and ensure that
3544
+ # you add a statement to your key's policy to give Amazon SES
3545
+ # permission to use it. For more information about giving
3546
+ # permissions, see the [Amazon SES Developer Guide][1].
3547
3547
  #
3548
3548
  # For more information about key policies, see the [Amazon Web
3549
- # Services KMS Developer Guide][2]. If you do not specify a master
3549
+ # Services KMS Developer Guide][2]. If you do not specify a managed
3550
3550
  # key, Amazon SES does not encrypt your emails.
3551
3551
  #
3552
3552
  # Your mail is encrypted by Amazon SES using the Amazon S3 encryption
@@ -3558,7 +3558,7 @@ module Aws::SES
3558
3558
  # encryption client is currently available with the [Amazon Web
3559
3559
  # Services SDK for Java][3] and [Amazon Web Services SDK for Ruby][4]
3560
3560
  # only. For more information about client-side encryption using Amazon
3561
- # Web Services KMS master keys, see the [Amazon S3 Developer
3561
+ # Web Services KMS managed keys, see the [Amazon S3 Developer
3562
3562
  # Guide][5].
3563
3563
  #
3564
3564
  #
@@ -3570,13 +3570,37 @@ module Aws::SES
3570
3570
  # [5]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingClientSideEncryption.html
3571
3571
  # @return [String]
3572
3572
  #
3573
+ # @!attribute [rw] iam_role_arn
3574
+ # The ARN of the IAM role to be used by Amazon Simple Email Service
3575
+ # while writing to the Amazon S3 bucket, optionally encrypting your
3576
+ # mail via the provided customer managed key, and publishing to the
3577
+ # Amazon SNS topic. This role should have access to the following
3578
+ # APIs:
3579
+ #
3580
+ # * `s3:PutObject`, `kms:Encrypt` and `kms:GenerateDataKey` for the
3581
+ # given Amazon S3 bucket.
3582
+ #
3583
+ # * `kms:GenerateDataKey` for the given Amazon Web Services KMS
3584
+ # customer managed key.
3585
+ #
3586
+ # * `sns:Publish` for the given Amazon SNS topic.
3587
+ #
3588
+ # <note markdown="1"> If an IAM role ARN is provided, the role (and only the role) is used
3589
+ # to access all the given resources (Amazon S3 bucket, Amazon Web
3590
+ # Services KMS customer managed key and Amazon SNS topic). Therefore,
3591
+ # setting up individual resource access permissions is not required.
3592
+ #
3593
+ # </note>
3594
+ # @return [String]
3595
+ #
3573
3596
  # @see http://docs.aws.amazon.com/goto/WebAPI/email-2010-12-01/S3Action AWS API Documentation
3574
3597
  #
3575
3598
  class S3Action < Struct.new(
3576
3599
  :topic_arn,
3577
3600
  :bucket_name,
3578
3601
  :object_key_prefix,
3579
- :kms_key_arn)
3602
+ :kms_key_arn,
3603
+ :iam_role_arn)
3580
3604
  SENSITIVE = []
3581
3605
  include Aws::Structure
3582
3606
  end
data/lib/aws-sdk-ses.rb CHANGED
@@ -53,6 +53,6 @@ require_relative 'aws-sdk-ses/customizations'
53
53
  # @!group service
54
54
  module Aws::SES
55
55
 
56
- GEM_VERSION = '1.68.0'
56
+ GEM_VERSION = '1.69.0'
57
57
 
58
58
  end
data/sig/client.rbs CHANGED
@@ -180,7 +180,8 @@ module Aws
180
180
  topic_arn: ::String?,
181
181
  bucket_name: ::String,
182
182
  object_key_prefix: ::String?,
183
- kms_key_arn: ::String?
183
+ kms_key_arn: ::String?,
184
+ iam_role_arn: ::String?
184
185
  }?,
185
186
  bounce_action: {
186
187
  topic_arn: ::String?,
@@ -669,7 +670,7 @@ module Aws
669
670
  ],
670
671
  template: ::String,
671
672
  ?template_arn: ::String,
672
- ?default_template_data: ::String,
673
+ default_template_data: ::String,
673
674
  destinations: Array[
674
675
  {
675
676
  destination: {
@@ -970,7 +971,8 @@ module Aws
970
971
  topic_arn: ::String?,
971
972
  bucket_name: ::String,
972
973
  object_key_prefix: ::String?,
973
- kms_key_arn: ::String?
974
+ kms_key_arn: ::String?,
975
+ iam_role_arn: ::String?
974
976
  }?,
975
977
  bounce_action: {
976
978
  topic_arn: ::String?,
data/sig/types.rbs CHANGED
@@ -795,6 +795,7 @@ module Aws::SES
795
795
  attr_accessor bucket_name: ::String
796
796
  attr_accessor object_key_prefix: ::String
797
797
  attr_accessor kms_key_arn: ::String
798
+ attr_accessor iam_role_arn: ::String
798
799
  SENSITIVE: []
799
800
  end
800
801
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-ses
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.68.0
4
+ version: 1.69.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-07-08 00:00:00.000000000 Z
11
+ date: 2024-08-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core