aws-sdk-accessanalyzer 1.46.0 → 1.47.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: de74ac7ea07e298ce1f27abd56bbdbb0d453326d41bc6cfc8c99e354d0378084
4
- data.tar.gz: 13215496a791944b864713f93a19c5ca28a0a542af8e2c2f9ca63e9f3280c74b
3
+ metadata.gz: 1363b0ba0d7d73dccaebdfc04876afb44af0a5ccb7acd99d7ce5d769a29bb2d1
4
+ data.tar.gz: 4d6b90090737f7a155e2fac6dba04ff7fc166c3a4d55a1c392c4819fc011127a
5
5
  SHA512:
6
- metadata.gz: fca86b1cd0dd7a060690e5ba2839ab1f0601c4896f94982fb65c3d7c38a2e313d7eac81eda643d62a1c119f158acdef584a1fcadc6a50ddf3ff3952aa377097e
7
- data.tar.gz: 6647fa0e5b066738ebe9c195853c43b8a6c858f3fcf2feaf69d7aea815439dc63b84b353b1d85ecc467693454f9572a52825aae463895a7c44a5ad1281deef50
6
+ metadata.gz: 1788586b538671dc7112774da7670a960e2207cd3b9cb8c8fa0fb28c05ff59990a67d7c8d517b53a6343239c568ffda00c5bac053c2312efc646085a0c796f44
7
+ data.tar.gz: def12bdd8e791b4ca777bd68c27c45d3e42148247b6a693fca28ec61fedc5a6fae16a826c7660632c40b15ef6e4e8c8d19ba3c8041c57024e1518add4693a964
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.47.0 (2024-03-20)
5
+ ------------------
6
+
7
+ * Feature - This release adds support for policy validation and external access findings for DynamoDB tables and streams. IAM Access Analyzer helps you author functional and secure resource-based policies and identify cross-account access. Updated service API, documentation, and paginators.
8
+
4
9
  1.46.0 (2024-03-01)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.46.0
1
+ 1.47.0
@@ -698,6 +698,12 @@ module Aws::AccessAnalyzer
698
698
  # s3_express_directory_bucket: {
699
699
  # bucket_policy: "S3ExpressDirectoryBucketPolicy",
700
700
  # },
701
+ # dynamodb_stream: {
702
+ # stream_policy: "DynamodbStreamPolicy",
703
+ # },
704
+ # dynamodb_table: {
705
+ # table_policy: "DynamodbTablePolicy",
706
+ # },
701
707
  # },
702
708
  # },
703
709
  # client_token: "String",
@@ -986,6 +992,8 @@ module Aws::AccessAnalyzer
986
992
  # resp.access_preview.configurations["ConfigurationsMapKey"].sns_topic.topic_policy #=> String
987
993
  # resp.access_preview.configurations["ConfigurationsMapKey"].sqs_queue.queue_policy #=> String
988
994
  # resp.access_preview.configurations["ConfigurationsMapKey"].s3_express_directory_bucket.bucket_policy #=> String
995
+ # resp.access_preview.configurations["ConfigurationsMapKey"].dynamodb_stream.stream_policy #=> String
996
+ # resp.access_preview.configurations["ConfigurationsMapKey"].dynamodb_table.table_policy #=> String
989
997
  # resp.access_preview.created_at #=> Time
990
998
  # resp.access_preview.status #=> String, one of "COMPLETED", "CREATING", "FAILED"
991
999
  # resp.access_preview.status_reason.code #=> String, one of "INTERNAL_ERROR", "INVALID_CONFIGURATION"
@@ -1025,7 +1033,7 @@ module Aws::AccessAnalyzer
1025
1033
  # @example Response structure
1026
1034
  #
1027
1035
  # resp.resource.resource_arn #=> String
1028
- # resp.resource.resource_type #=> String, one of "AWS::S3::Bucket", "AWS::IAM::Role", "AWS::SQS::Queue", "AWS::Lambda::Function", "AWS::Lambda::LayerVersion", "AWS::KMS::Key", "AWS::SecretsManager::Secret", "AWS::EFS::FileSystem", "AWS::EC2::Snapshot", "AWS::ECR::Repository", "AWS::RDS::DBSnapshot", "AWS::RDS::DBClusterSnapshot", "AWS::SNS::Topic", "AWS::S3Express::DirectoryBucket"
1036
+ # resp.resource.resource_type #=> String, one of "AWS::S3::Bucket", "AWS::IAM::Role", "AWS::SQS::Queue", "AWS::Lambda::Function", "AWS::Lambda::LayerVersion", "AWS::KMS::Key", "AWS::SecretsManager::Secret", "AWS::EFS::FileSystem", "AWS::EC2::Snapshot", "AWS::ECR::Repository", "AWS::RDS::DBSnapshot", "AWS::RDS::DBClusterSnapshot", "AWS::SNS::Topic", "AWS::S3Express::DirectoryBucket", "AWS::DynamoDB::Table", "AWS::DynamoDB::Stream"
1029
1037
  # resp.resource.created_at #=> Time
1030
1038
  # resp.resource.analyzed_at #=> Time
1031
1039
  # resp.resource.updated_at #=> Time
@@ -1169,7 +1177,7 @@ module Aws::AccessAnalyzer
1169
1177
  # resp.finding.action[0] #=> String
1170
1178
  # resp.finding.resource #=> String
1171
1179
  # resp.finding.is_public #=> Boolean
1172
- # resp.finding.resource_type #=> String, one of "AWS::S3::Bucket", "AWS::IAM::Role", "AWS::SQS::Queue", "AWS::Lambda::Function", "AWS::Lambda::LayerVersion", "AWS::KMS::Key", "AWS::SecretsManager::Secret", "AWS::EFS::FileSystem", "AWS::EC2::Snapshot", "AWS::ECR::Repository", "AWS::RDS::DBSnapshot", "AWS::RDS::DBClusterSnapshot", "AWS::SNS::Topic", "AWS::S3Express::DirectoryBucket"
1180
+ # resp.finding.resource_type #=> String, one of "AWS::S3::Bucket", "AWS::IAM::Role", "AWS::SQS::Queue", "AWS::Lambda::Function", "AWS::Lambda::LayerVersion", "AWS::KMS::Key", "AWS::SecretsManager::Secret", "AWS::EFS::FileSystem", "AWS::EC2::Snapshot", "AWS::ECR::Repository", "AWS::RDS::DBSnapshot", "AWS::RDS::DBClusterSnapshot", "AWS::SNS::Topic", "AWS::S3Express::DirectoryBucket", "AWS::DynamoDB::Table", "AWS::DynamoDB::Stream"
1173
1181
  # resp.finding.condition #=> Hash
1174
1182
  # resp.finding.condition["String"] #=> String
1175
1183
  # resp.finding.created_at #=> Time
@@ -1247,7 +1255,7 @@ module Aws::AccessAnalyzer
1247
1255
  # resp.id #=> String
1248
1256
  # resp.next_token #=> String
1249
1257
  # resp.resource #=> String
1250
- # resp.resource_type #=> String, one of "AWS::S3::Bucket", "AWS::IAM::Role", "AWS::SQS::Queue", "AWS::Lambda::Function", "AWS::Lambda::LayerVersion", "AWS::KMS::Key", "AWS::SecretsManager::Secret", "AWS::EFS::FileSystem", "AWS::EC2::Snapshot", "AWS::ECR::Repository", "AWS::RDS::DBSnapshot", "AWS::RDS::DBClusterSnapshot", "AWS::SNS::Topic", "AWS::S3Express::DirectoryBucket"
1258
+ # resp.resource_type #=> String, one of "AWS::S3::Bucket", "AWS::IAM::Role", "AWS::SQS::Queue", "AWS::Lambda::Function", "AWS::Lambda::LayerVersion", "AWS::KMS::Key", "AWS::SecretsManager::Secret", "AWS::EFS::FileSystem", "AWS::EC2::Snapshot", "AWS::ECR::Repository", "AWS::RDS::DBSnapshot", "AWS::RDS::DBClusterSnapshot", "AWS::SNS::Topic", "AWS::S3Express::DirectoryBucket", "AWS::DynamoDB::Table", "AWS::DynamoDB::Stream"
1251
1259
  # resp.resource_owner_account #=> String
1252
1260
  # resp.status #=> String, one of "ACTIVE", "ARCHIVED", "RESOLVED"
1253
1261
  # resp.updated_at #=> Time
@@ -1410,7 +1418,7 @@ module Aws::AccessAnalyzer
1410
1418
  # resp.findings[0].condition["String"] #=> String
1411
1419
  # resp.findings[0].resource #=> String
1412
1420
  # resp.findings[0].is_public #=> Boolean
1413
- # resp.findings[0].resource_type #=> String, one of "AWS::S3::Bucket", "AWS::IAM::Role", "AWS::SQS::Queue", "AWS::Lambda::Function", "AWS::Lambda::LayerVersion", "AWS::KMS::Key", "AWS::SecretsManager::Secret", "AWS::EFS::FileSystem", "AWS::EC2::Snapshot", "AWS::ECR::Repository", "AWS::RDS::DBSnapshot", "AWS::RDS::DBClusterSnapshot", "AWS::SNS::Topic", "AWS::S3Express::DirectoryBucket"
1421
+ # resp.findings[0].resource_type #=> String, one of "AWS::S3::Bucket", "AWS::IAM::Role", "AWS::SQS::Queue", "AWS::Lambda::Function", "AWS::Lambda::LayerVersion", "AWS::KMS::Key", "AWS::SecretsManager::Secret", "AWS::EFS::FileSystem", "AWS::EC2::Snapshot", "AWS::ECR::Repository", "AWS::RDS::DBSnapshot", "AWS::RDS::DBClusterSnapshot", "AWS::SNS::Topic", "AWS::S3Express::DirectoryBucket", "AWS::DynamoDB::Table", "AWS::DynamoDB::Stream"
1414
1422
  # resp.findings[0].created_at #=> Time
1415
1423
  # resp.findings[0].change_type #=> String, one of "CHANGED", "NEW", "UNCHANGED"
1416
1424
  # resp.findings[0].status #=> String, one of "ACTIVE", "ARCHIVED", "RESOLVED"
@@ -1512,7 +1520,7 @@ module Aws::AccessAnalyzer
1512
1520
  #
1513
1521
  # resp = client.list_analyzed_resources({
1514
1522
  # analyzer_arn: "AnalyzerArn", # required
1515
- # resource_type: "AWS::S3::Bucket", # accepts AWS::S3::Bucket, AWS::IAM::Role, AWS::SQS::Queue, AWS::Lambda::Function, AWS::Lambda::LayerVersion, AWS::KMS::Key, AWS::SecretsManager::Secret, AWS::EFS::FileSystem, AWS::EC2::Snapshot, AWS::ECR::Repository, AWS::RDS::DBSnapshot, AWS::RDS::DBClusterSnapshot, AWS::SNS::Topic, AWS::S3Express::DirectoryBucket
1523
+ # resource_type: "AWS::S3::Bucket", # accepts AWS::S3::Bucket, AWS::IAM::Role, AWS::SQS::Queue, AWS::Lambda::Function, AWS::Lambda::LayerVersion, AWS::KMS::Key, AWS::SecretsManager::Secret, AWS::EFS::FileSystem, AWS::EC2::Snapshot, AWS::ECR::Repository, AWS::RDS::DBSnapshot, AWS::RDS::DBClusterSnapshot, AWS::SNS::Topic, AWS::S3Express::DirectoryBucket, AWS::DynamoDB::Table, AWS::DynamoDB::Stream
1516
1524
  # next_token: "Token",
1517
1525
  # max_results: 1,
1518
1526
  # })
@@ -1522,7 +1530,7 @@ module Aws::AccessAnalyzer
1522
1530
  # resp.analyzed_resources #=> Array
1523
1531
  # resp.analyzed_resources[0].resource_arn #=> String
1524
1532
  # resp.analyzed_resources[0].resource_owner_account #=> String
1525
- # resp.analyzed_resources[0].resource_type #=> String, one of "AWS::S3::Bucket", "AWS::IAM::Role", "AWS::SQS::Queue", "AWS::Lambda::Function", "AWS::Lambda::LayerVersion", "AWS::KMS::Key", "AWS::SecretsManager::Secret", "AWS::EFS::FileSystem", "AWS::EC2::Snapshot", "AWS::ECR::Repository", "AWS::RDS::DBSnapshot", "AWS::RDS::DBClusterSnapshot", "AWS::SNS::Topic", "AWS::S3Express::DirectoryBucket"
1533
+ # resp.analyzed_resources[0].resource_type #=> String, one of "AWS::S3::Bucket", "AWS::IAM::Role", "AWS::SQS::Queue", "AWS::Lambda::Function", "AWS::Lambda::LayerVersion", "AWS::KMS::Key", "AWS::SecretsManager::Secret", "AWS::EFS::FileSystem", "AWS::EC2::Snapshot", "AWS::ECR::Repository", "AWS::RDS::DBSnapshot", "AWS::RDS::DBClusterSnapshot", "AWS::SNS::Topic", "AWS::S3Express::DirectoryBucket", "AWS::DynamoDB::Table", "AWS::DynamoDB::Stream"
1526
1534
  # resp.next_token #=> String
1527
1535
  #
1528
1536
  # @see http://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/ListAnalyzedResources AWS API Documentation
@@ -1706,7 +1714,7 @@ module Aws::AccessAnalyzer
1706
1714
  # resp.findings[0].action[0] #=> String
1707
1715
  # resp.findings[0].resource #=> String
1708
1716
  # resp.findings[0].is_public #=> Boolean
1709
- # resp.findings[0].resource_type #=> String, one of "AWS::S3::Bucket", "AWS::IAM::Role", "AWS::SQS::Queue", "AWS::Lambda::Function", "AWS::Lambda::LayerVersion", "AWS::KMS::Key", "AWS::SecretsManager::Secret", "AWS::EFS::FileSystem", "AWS::EC2::Snapshot", "AWS::ECR::Repository", "AWS::RDS::DBSnapshot", "AWS::RDS::DBClusterSnapshot", "AWS::SNS::Topic", "AWS::S3Express::DirectoryBucket"
1717
+ # resp.findings[0].resource_type #=> String, one of "AWS::S3::Bucket", "AWS::IAM::Role", "AWS::SQS::Queue", "AWS::Lambda::Function", "AWS::Lambda::LayerVersion", "AWS::KMS::Key", "AWS::SecretsManager::Secret", "AWS::EFS::FileSystem", "AWS::EC2::Snapshot", "AWS::ECR::Repository", "AWS::RDS::DBSnapshot", "AWS::RDS::DBClusterSnapshot", "AWS::SNS::Topic", "AWS::S3Express::DirectoryBucket", "AWS::DynamoDB::Table", "AWS::DynamoDB::Stream"
1710
1718
  # resp.findings[0].condition #=> Hash
1711
1719
  # resp.findings[0].condition["String"] #=> String
1712
1720
  # resp.findings[0].created_at #=> Time
@@ -1798,7 +1806,7 @@ module Aws::AccessAnalyzer
1798
1806
  # resp.findings[0].error #=> String
1799
1807
  # resp.findings[0].id #=> String
1800
1808
  # resp.findings[0].resource #=> String
1801
- # resp.findings[0].resource_type #=> String, one of "AWS::S3::Bucket", "AWS::IAM::Role", "AWS::SQS::Queue", "AWS::Lambda::Function", "AWS::Lambda::LayerVersion", "AWS::KMS::Key", "AWS::SecretsManager::Secret", "AWS::EFS::FileSystem", "AWS::EC2::Snapshot", "AWS::ECR::Repository", "AWS::RDS::DBSnapshot", "AWS::RDS::DBClusterSnapshot", "AWS::SNS::Topic", "AWS::S3Express::DirectoryBucket"
1809
+ # resp.findings[0].resource_type #=> String, one of "AWS::S3::Bucket", "AWS::IAM::Role", "AWS::SQS::Queue", "AWS::Lambda::Function", "AWS::Lambda::LayerVersion", "AWS::KMS::Key", "AWS::SecretsManager::Secret", "AWS::EFS::FileSystem", "AWS::EC2::Snapshot", "AWS::ECR::Repository", "AWS::RDS::DBSnapshot", "AWS::RDS::DBClusterSnapshot", "AWS::SNS::Topic", "AWS::S3Express::DirectoryBucket", "AWS::DynamoDB::Table", "AWS::DynamoDB::Stream"
1802
1810
  # resp.findings[0].resource_owner_account #=> String
1803
1811
  # resp.findings[0].status #=> String, one of "ACTIVE", "ARCHIVED", "RESOLVED"
1804
1812
  # resp.findings[0].updated_at #=> Time
@@ -2196,7 +2204,7 @@ module Aws::AccessAnalyzer
2196
2204
  # next_token: "Token",
2197
2205
  # policy_document: "PolicyDocument", # required
2198
2206
  # policy_type: "IDENTITY_POLICY", # required, accepts IDENTITY_POLICY, RESOURCE_POLICY, SERVICE_CONTROL_POLICY
2199
- # validate_policy_resource_type: "AWS::S3::Bucket", # accepts AWS::S3::Bucket, AWS::S3::AccessPoint, AWS::S3::MultiRegionAccessPoint, AWS::S3ObjectLambda::AccessPoint, AWS::IAM::AssumeRolePolicyDocument
2207
+ # validate_policy_resource_type: "AWS::S3::Bucket", # accepts AWS::S3::Bucket, AWS::S3::AccessPoint, AWS::S3::MultiRegionAccessPoint, AWS::S3ObjectLambda::AccessPoint, AWS::IAM::AssumeRolePolicyDocument, AWS::DynamoDB::Table
2200
2208
  # })
2201
2209
  #
2202
2210
  # @example Response structure
@@ -2243,7 +2251,7 @@ module Aws::AccessAnalyzer
2243
2251
  params: params,
2244
2252
  config: config)
2245
2253
  context[:gem_name] = 'aws-sdk-accessanalyzer'
2246
- context[:gem_version] = '1.46.0'
2254
+ context[:gem_version] = '1.47.0'
2247
2255
  Seahorse::Client::Request.new(handlers, context)
2248
2256
  end
2249
2257
 
@@ -73,6 +73,10 @@ module Aws::AccessAnalyzer
73
73
  Criterion = Shapes::StructureShape.new(name: 'Criterion')
74
74
  DeleteAnalyzerRequest = Shapes::StructureShape.new(name: 'DeleteAnalyzerRequest')
75
75
  DeleteArchiveRuleRequest = Shapes::StructureShape.new(name: 'DeleteArchiveRuleRequest')
76
+ DynamodbStreamConfiguration = Shapes::StructureShape.new(name: 'DynamodbStreamConfiguration')
77
+ DynamodbStreamPolicy = Shapes::StringShape.new(name: 'DynamodbStreamPolicy')
78
+ DynamodbTableConfiguration = Shapes::StructureShape.new(name: 'DynamodbTableConfiguration')
79
+ DynamodbTablePolicy = Shapes::StringShape.new(name: 'DynamodbTablePolicy')
76
80
  EbsGroup = Shapes::StringShape.new(name: 'EbsGroup')
77
81
  EbsGroupList = Shapes::ListShape.new(name: 'EbsGroupList')
78
82
  EbsSnapshotConfiguration = Shapes::StructureShape.new(name: 'EbsSnapshotConfiguration')
@@ -434,6 +438,8 @@ module Aws::AccessAnalyzer
434
438
  Configuration.add_member(:sns_topic, Shapes::ShapeRef.new(shape: SnsTopicConfiguration, location_name: "snsTopic"))
435
439
  Configuration.add_member(:sqs_queue, Shapes::ShapeRef.new(shape: SqsQueueConfiguration, location_name: "sqsQueue"))
436
440
  Configuration.add_member(:s3_express_directory_bucket, Shapes::ShapeRef.new(shape: S3ExpressDirectoryBucketConfiguration, location_name: "s3ExpressDirectoryBucket"))
441
+ Configuration.add_member(:dynamodb_stream, Shapes::ShapeRef.new(shape: DynamodbStreamConfiguration, location_name: "dynamodbStream"))
442
+ Configuration.add_member(:dynamodb_table, Shapes::ShapeRef.new(shape: DynamodbTableConfiguration, location_name: "dynamodbTable"))
437
443
  Configuration.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
438
444
  Configuration.add_member_subclass(:ebs_snapshot, Types::Configuration::EbsSnapshot)
439
445
  Configuration.add_member_subclass(:ecr_repository, Types::Configuration::EcrRepository)
@@ -447,6 +453,8 @@ module Aws::AccessAnalyzer
447
453
  Configuration.add_member_subclass(:sns_topic, Types::Configuration::SnsTopic)
448
454
  Configuration.add_member_subclass(:sqs_queue, Types::Configuration::SqsQueue)
449
455
  Configuration.add_member_subclass(:s3_express_directory_bucket, Types::Configuration::S3ExpressDirectoryBucket)
456
+ Configuration.add_member_subclass(:dynamodb_stream, Types::Configuration::DynamodbStream)
457
+ Configuration.add_member_subclass(:dynamodb_table, Types::Configuration::DynamodbTable)
450
458
  Configuration.add_member_subclass(:unknown, Types::Configuration::Unknown)
451
459
  Configuration.struct_class = Types::Configuration
452
460
 
@@ -498,6 +506,12 @@ module Aws::AccessAnalyzer
498
506
  DeleteArchiveRuleRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: String, location: "querystring", location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
499
507
  DeleteArchiveRuleRequest.struct_class = Types::DeleteArchiveRuleRequest
500
508
 
509
+ DynamodbStreamConfiguration.add_member(:stream_policy, Shapes::ShapeRef.new(shape: DynamodbStreamPolicy, location_name: "streamPolicy"))
510
+ DynamodbStreamConfiguration.struct_class = Types::DynamodbStreamConfiguration
511
+
512
+ DynamodbTableConfiguration.add_member(:table_policy, Shapes::ShapeRef.new(shape: DynamodbTablePolicy, location_name: "tablePolicy"))
513
+ DynamodbTableConfiguration.struct_class = Types::DynamodbTableConfiguration
514
+
501
515
  EbsGroupList.member = Shapes::ShapeRef.new(shape: EbsGroup)
502
516
 
503
517
  EbsSnapshotConfiguration.add_member(:user_ids, Shapes::ShapeRef.new(shape: EbsUserIdList, location_name: "userIds"))
@@ -806,6 +806,14 @@ module Aws::AccessAnalyzer
806
806
  # bucket.
807
807
  # @return [Types::S3ExpressDirectoryBucketConfiguration]
808
808
  #
809
+ # @!attribute [rw] dynamodb_stream
810
+ # The access control configuration is for a DynamoDB stream.
811
+ # @return [Types::DynamodbStreamConfiguration]
812
+ #
813
+ # @!attribute [rw] dynamodb_table
814
+ # The access control configuration is for a DynamoDB table or index.
815
+ # @return [Types::DynamodbTableConfiguration]
816
+ #
809
817
  # @see http://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/Configuration AWS API Documentation
810
818
  #
811
819
  class Configuration < Struct.new(
@@ -821,6 +829,8 @@ module Aws::AccessAnalyzer
821
829
  :sns_topic,
822
830
  :sqs_queue,
823
831
  :s3_express_directory_bucket,
832
+ :dynamodb_stream,
833
+ :dynamodb_table,
824
834
  :unknown)
825
835
  SENSITIVE = []
826
836
  include Aws::Structure
@@ -838,6 +848,8 @@ module Aws::AccessAnalyzer
838
848
  class SnsTopic < Configuration; end
839
849
  class SqsQueue < Configuration; end
840
850
  class S3ExpressDirectoryBucket < Configuration; end
851
+ class DynamodbStream < Configuration; end
852
+ class DynamodbTable < Configuration; end
841
853
  class Unknown < Configuration; end
842
854
  end
843
855
 
@@ -1097,6 +1109,73 @@ module Aws::AccessAnalyzer
1097
1109
  include Aws::Structure
1098
1110
  end
1099
1111
 
1112
+ # The proposed access control configuration for a DynamoDB stream. You
1113
+ # can propose a configuration for a new DynamoDB stream or an existing
1114
+ # DynamoDB stream that you own by specifying the policy for the DynamoDB
1115
+ # stream. For more information, see [PutResourcePolicy][1].
1116
+ #
1117
+ # * If the configuration is for an existing DynamoDB stream and you do
1118
+ # not specify the DynamoDB policy, then the access preview uses the
1119
+ # existing DynamoDB policy for the stream.
1120
+ #
1121
+ # * If the access preview is for a new resource and you do not specify
1122
+ # the policy, then the access preview assumes a DynamoDB stream
1123
+ # without a policy.
1124
+ #
1125
+ # * To propose deletion of an existing DynamoDB stream policy, you can
1126
+ # specify an empty string for the DynamoDB policy.
1127
+ #
1128
+ #
1129
+ #
1130
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutResourcePolicy.html
1131
+ #
1132
+ # @!attribute [rw] stream_policy
1133
+ # The proposed resource policy defining who can access or manage the
1134
+ # DynamoDB stream.
1135
+ # @return [String]
1136
+ #
1137
+ # @see http://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/DynamodbStreamConfiguration AWS API Documentation
1138
+ #
1139
+ class DynamodbStreamConfiguration < Struct.new(
1140
+ :stream_policy)
1141
+ SENSITIVE = []
1142
+ include Aws::Structure
1143
+ end
1144
+
1145
+ # The proposed access control configuration for a DynamoDB table or
1146
+ # index. You can propose a configuration for a new DynamoDB table or
1147
+ # index or an existing DynamoDB table or index that you own by
1148
+ # specifying the policy for the DynamoDB table or index. For more
1149
+ # information, see [PutResourcePolicy][1].
1150
+ #
1151
+ # * If the configuration is for an existing DynamoDB table or index and
1152
+ # you do not specify the DynamoDB policy, then the access preview uses
1153
+ # the existing DynamoDB policy for the table or index.
1154
+ #
1155
+ # * If the access preview is for a new resource and you do not specify
1156
+ # the policy, then the access preview assumes a DynamoDB table without
1157
+ # a policy.
1158
+ #
1159
+ # * To propose deletion of an existing DynamoDB table or index policy,
1160
+ # you can specify an empty string for the DynamoDB policy.
1161
+ #
1162
+ #
1163
+ #
1164
+ # [1]: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutResourcePolicy.html
1165
+ #
1166
+ # @!attribute [rw] table_policy
1167
+ # The proposed resource policy defining who can access or manage the
1168
+ # DynamoDB table.
1169
+ # @return [String]
1170
+ #
1171
+ # @see http://docs.aws.amazon.com/goto/WebAPI/accessanalyzer-2019-11-01/DynamodbTableConfiguration AWS API Documentation
1172
+ #
1173
+ class DynamodbTableConfiguration < Struct.new(
1174
+ :table_policy)
1175
+ SENSITIVE = []
1176
+ include Aws::Structure
1177
+ end
1178
+
1100
1179
  # The proposed access control configuration for an Amazon EBS volume
1101
1180
  # snapshot. You can propose a configuration for a new Amazon EBS volume
1102
1181
  # snapshot or an Amazon EBS volume snapshot that you own by specifying
@@ -52,6 +52,6 @@ require_relative 'aws-sdk-accessanalyzer/customizations'
52
52
  # @!group service
53
53
  module Aws::AccessAnalyzer
54
54
 
55
- GEM_VERSION = '1.46.0'
55
+ GEM_VERSION = '1.47.0'
56
56
 
57
57
  end
data/sig/client.rbs CHANGED
@@ -212,6 +212,12 @@ module Aws
212
212
  }?,
213
213
  s3_express_directory_bucket: {
214
214
  bucket_policy: ::String?
215
+ }?,
216
+ dynamodb_stream: {
217
+ stream_policy: ::String?
218
+ }?,
219
+ dynamodb_table: {
220
+ table_policy: ::String?
215
221
  }?
216
222
  }],
217
223
  ?client_token: ::String
@@ -337,7 +343,7 @@ module Aws
337
343
  def id: () -> ::String
338
344
  def next_token: () -> ::String
339
345
  def resource: () -> ::String
340
- def resource_type: () -> ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket")
346
+ def resource_type: () -> ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket" | "AWS::DynamoDB::Table" | "AWS::DynamoDB::Stream")
341
347
  def resource_owner_account: () -> ::String
342
348
  def status: () -> ("ACTIVE" | "ARCHIVED" | "RESOLVED")
343
349
  def updated_at: () -> ::Time
@@ -407,7 +413,7 @@ module Aws
407
413
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/AccessAnalyzer/Client.html#list_analyzed_resources-instance_method
408
414
  def list_analyzed_resources: (
409
415
  analyzer_arn: ::String,
410
- ?resource_type: ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket"),
416
+ ?resource_type: ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket" | "AWS::DynamoDB::Table" | "AWS::DynamoDB::Stream"),
411
417
  ?next_token: ::String,
412
418
  ?max_results: ::Integer
413
419
  ) -> _ListAnalyzedResourcesResponseSuccess
@@ -597,7 +603,7 @@ module Aws
597
603
  ?next_token: ::String,
598
604
  policy_document: ::String,
599
605
  policy_type: ("IDENTITY_POLICY" | "RESOURCE_POLICY" | "SERVICE_CONTROL_POLICY"),
600
- ?validate_policy_resource_type: ("AWS::S3::Bucket" | "AWS::S3::AccessPoint" | "AWS::S3::MultiRegionAccessPoint" | "AWS::S3ObjectLambda::AccessPoint" | "AWS::IAM::AssumeRolePolicyDocument")
606
+ ?validate_policy_resource_type: ("AWS::S3::Bucket" | "AWS::S3::AccessPoint" | "AWS::S3::MultiRegionAccessPoint" | "AWS::S3ObjectLambda::AccessPoint" | "AWS::IAM::AssumeRolePolicyDocument" | "AWS::DynamoDB::Table")
601
607
  ) -> _ValidatePolicyResponseSuccess
602
608
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ValidatePolicyResponseSuccess
603
609
  end
data/sig/types.rbs CHANGED
@@ -37,7 +37,7 @@ module Aws::AccessAnalyzer
37
37
  attr_accessor condition: ::Hash[::String, ::String]
38
38
  attr_accessor resource: ::String
39
39
  attr_accessor is_public: bool
40
- attr_accessor resource_type: ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket")
40
+ attr_accessor resource_type: ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket" | "AWS::DynamoDB::Table" | "AWS::DynamoDB::Stream")
41
41
  attr_accessor created_at: ::Time
42
42
  attr_accessor change_type: ("CHANGED" | "NEW" | "UNCHANGED")
43
43
  attr_accessor status: ("ACTIVE" | "ARCHIVED" | "RESOLVED")
@@ -77,7 +77,7 @@ module Aws::AccessAnalyzer
77
77
 
78
78
  class AnalyzedResource
79
79
  attr_accessor resource_arn: ::String
80
- attr_accessor resource_type: ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket")
80
+ attr_accessor resource_type: ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket" | "AWS::DynamoDB::Table" | "AWS::DynamoDB::Stream")
81
81
  attr_accessor created_at: ::Time
82
82
  attr_accessor analyzed_at: ::Time
83
83
  attr_accessor updated_at: ::Time
@@ -93,7 +93,7 @@ module Aws::AccessAnalyzer
93
93
  class AnalyzedResourceSummary
94
94
  attr_accessor resource_arn: ::String
95
95
  attr_accessor resource_owner_account: ::String
96
- attr_accessor resource_type: ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket")
96
+ attr_accessor resource_type: ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket" | "AWS::DynamoDB::Table" | "AWS::DynamoDB::Stream")
97
97
  SENSITIVE: []
98
98
  end
99
99
 
@@ -201,6 +201,8 @@ module Aws::AccessAnalyzer
201
201
  attr_accessor sns_topic: Types::SnsTopicConfiguration
202
202
  attr_accessor sqs_queue: Types::SqsQueueConfiguration
203
203
  attr_accessor s3_express_directory_bucket: Types::S3ExpressDirectoryBucketConfiguration
204
+ attr_accessor dynamodb_stream: Types::DynamodbStreamConfiguration
205
+ attr_accessor dynamodb_table: Types::DynamodbTableConfiguration
204
206
  attr_accessor unknown: untyped
205
207
  SENSITIVE: []
206
208
 
@@ -228,6 +230,10 @@ module Aws::AccessAnalyzer
228
230
  end
229
231
  class S3ExpressDirectoryBucket < Configuration
230
232
  end
233
+ class DynamodbStream < Configuration
234
+ end
235
+ class DynamodbTable < Configuration
236
+ end
231
237
  class Unknown < Configuration
232
238
  end
233
239
  end
@@ -295,6 +301,16 @@ module Aws::AccessAnalyzer
295
301
  SENSITIVE: []
296
302
  end
297
303
 
304
+ class DynamodbStreamConfiguration
305
+ attr_accessor stream_policy: ::String
306
+ SENSITIVE: []
307
+ end
308
+
309
+ class DynamodbTableConfiguration
310
+ attr_accessor table_policy: ::String
311
+ SENSITIVE: []
312
+ end
313
+
298
314
  class EbsSnapshotConfiguration
299
315
  attr_accessor user_ids: ::Array[::String]
300
316
  attr_accessor groups: ::Array[::String]
@@ -327,7 +343,7 @@ module Aws::AccessAnalyzer
327
343
  attr_accessor action: ::Array[::String]
328
344
  attr_accessor resource: ::String
329
345
  attr_accessor is_public: bool
330
- attr_accessor resource_type: ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket")
346
+ attr_accessor resource_type: ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket" | "AWS::DynamoDB::Table" | "AWS::DynamoDB::Stream")
331
347
  attr_accessor condition: ::Hash[::String, ::String]
332
348
  attr_accessor created_at: ::Time
333
349
  attr_accessor analyzed_at: ::Time
@@ -380,7 +396,7 @@ module Aws::AccessAnalyzer
380
396
  attr_accessor action: ::Array[::String]
381
397
  attr_accessor resource: ::String
382
398
  attr_accessor is_public: bool
383
- attr_accessor resource_type: ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket")
399
+ attr_accessor resource_type: ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket" | "AWS::DynamoDB::Table" | "AWS::DynamoDB::Stream")
384
400
  attr_accessor condition: ::Hash[::String, ::String]
385
401
  attr_accessor created_at: ::Time
386
402
  attr_accessor analyzed_at: ::Time
@@ -398,7 +414,7 @@ module Aws::AccessAnalyzer
398
414
  attr_accessor error: ::String
399
415
  attr_accessor id: ::String
400
416
  attr_accessor resource: ::String
401
- attr_accessor resource_type: ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket")
417
+ attr_accessor resource_type: ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket" | "AWS::DynamoDB::Table" | "AWS::DynamoDB::Stream")
402
418
  attr_accessor resource_owner_account: ::String
403
419
  attr_accessor status: ("ACTIVE" | "ARCHIVED" | "RESOLVED")
404
420
  attr_accessor updated_at: ::Time
@@ -493,7 +509,7 @@ module Aws::AccessAnalyzer
493
509
  attr_accessor id: ::String
494
510
  attr_accessor next_token: ::String
495
511
  attr_accessor resource: ::String
496
- attr_accessor resource_type: ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket")
512
+ attr_accessor resource_type: ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket" | "AWS::DynamoDB::Table" | "AWS::DynamoDB::Stream")
497
513
  attr_accessor resource_owner_account: ::String
498
514
  attr_accessor status: ("ACTIVE" | "ARCHIVED" | "RESOLVED")
499
515
  attr_accessor updated_at: ::Time
@@ -606,7 +622,7 @@ module Aws::AccessAnalyzer
606
622
 
607
623
  class ListAnalyzedResourcesRequest
608
624
  attr_accessor analyzer_arn: ::String
609
- attr_accessor resource_type: ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket")
625
+ attr_accessor resource_type: ("AWS::S3::Bucket" | "AWS::IAM::Role" | "AWS::SQS::Queue" | "AWS::Lambda::Function" | "AWS::Lambda::LayerVersion" | "AWS::KMS::Key" | "AWS::SecretsManager::Secret" | "AWS::EFS::FileSystem" | "AWS::EC2::Snapshot" | "AWS::ECR::Repository" | "AWS::RDS::DBSnapshot" | "AWS::RDS::DBClusterSnapshot" | "AWS::SNS::Topic" | "AWS::S3Express::DirectoryBucket" | "AWS::DynamoDB::Table" | "AWS::DynamoDB::Stream")
610
626
  attr_accessor next_token: ::String
611
627
  attr_accessor max_results: ::Integer
612
628
  SENSITIVE: []
@@ -1012,7 +1028,7 @@ module Aws::AccessAnalyzer
1012
1028
  attr_accessor next_token: ::String
1013
1029
  attr_accessor policy_document: ::String
1014
1030
  attr_accessor policy_type: ("IDENTITY_POLICY" | "RESOURCE_POLICY" | "SERVICE_CONTROL_POLICY")
1015
- attr_accessor validate_policy_resource_type: ("AWS::S3::Bucket" | "AWS::S3::AccessPoint" | "AWS::S3::MultiRegionAccessPoint" | "AWS::S3ObjectLambda::AccessPoint" | "AWS::IAM::AssumeRolePolicyDocument")
1031
+ attr_accessor validate_policy_resource_type: ("AWS::S3::Bucket" | "AWS::S3::AccessPoint" | "AWS::S3::MultiRegionAccessPoint" | "AWS::S3ObjectLambda::AccessPoint" | "AWS::IAM::AssumeRolePolicyDocument" | "AWS::DynamoDB::Table")
1016
1032
  SENSITIVE: []
1017
1033
  end
1018
1034
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-accessanalyzer
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.46.0
4
+ version: 1.47.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-03-01 00:00:00.000000000 Z
11
+ date: 2024-03-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core