aws-sdk-emrcontainers 1.31.0 → 1.33.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: e6bb644e186e1897a09eb4ed334e5b3cbc33ab07670fbd7657da70c8adfba2ec
4
- data.tar.gz: 360ac06f14d3a17e9122ab9470cce92d53508bdb207793a26c69f956eb00ad41
3
+ metadata.gz: 38a25b77fe75ad14506eba32f857df5b8a3f0991b0671c8c69516d8788c38445
4
+ data.tar.gz: e9c1d0a20872c9fcfe24f706cd3238e8185652761a8c5e8a012b0f4fbebb8874
5
5
  SHA512:
6
- metadata.gz: e8951bf208a45f8412a96bc75dbe93fa1df9fc22174fa31e13339eea40efa8ff80510e5cd032f2fd9d4d1765995fcdf903c99de84b053c358dbabfc13584c514
7
- data.tar.gz: 4e361faa93ad2233b90615b00efb5f4f8de84631f71e474b5509f8711506042aecd59544826f958deba0068a4af5f36ce0d203c4d7e2e39d8e8165d97d8d377b
6
+ metadata.gz: 79bed2da7ed497e1e947d2ef9eaaa4979d93668bc03729848d38b7e9b34c7b4e17f44f84fcf91b0cb9d44065228b4023bf8537fb8b91359be248f85a178f695d
7
+ data.tar.gz: 40b94b0cb5e147f14be68037fad82a99ff9223f3c7edea9ec89c980eb3de20b7d6fe1f659dfdaae433b8bee6daedfaa241d928a0722f5471cf0e8b99a072b03f
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.33.0 (2024-04-24)
5
+ ------------------
6
+
7
+ * Feature - EMRonEKS Service support for SecurityConfiguration enforcement for Spark Jobs.
8
+
9
+ 1.32.0 (2024-04-04)
10
+ ------------------
11
+
12
+ * Feature - This release adds support for integration with EKS AccessEntry APIs to enable automatic Cluster Access for EMR on EKS.
13
+
4
14
  1.31.0 (2024-03-25)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.31.0
1
+ 1.33.0
@@ -629,6 +629,80 @@ module Aws::EMRContainers
629
629
  req.send_request(options)
630
630
  end
631
631
 
632
+ # Creates a security configuration. Security configurations in Amazon
633
+ # EMR on EKS are templates for different security setups. You can use
634
+ # security configurations to configure the Lake Formation integration
635
+ # setup. You can also create a security configuration to re-use a
636
+ # security setup each time you create a virtual cluster.
637
+ #
638
+ # @option params [required, String] :client_token
639
+ # The client idempotency token to use when creating the security
640
+ # configuration.
641
+ #
642
+ # **A suitable default value is auto-generated.** You should normally
643
+ # not need to pass this option.**
644
+ #
645
+ # @option params [required, String] :name
646
+ # The name of the security configuration.
647
+ #
648
+ # @option params [required, Types::SecurityConfigurationData] :security_configuration_data
649
+ # Security configuration input for the request.
650
+ #
651
+ # @option params [Hash<String,String>] :tags
652
+ # The tags to add to the security configuration.
653
+ #
654
+ # @return [Types::CreateSecurityConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
655
+ #
656
+ # * {Types::CreateSecurityConfigurationResponse#id #id} => String
657
+ # * {Types::CreateSecurityConfigurationResponse#name #name} => String
658
+ # * {Types::CreateSecurityConfigurationResponse#arn #arn} => String
659
+ #
660
+ # @example Request syntax with placeholder values
661
+ #
662
+ # resp = client.create_security_configuration({
663
+ # client_token: "ClientToken", # required
664
+ # name: "ResourceNameString", # required
665
+ # security_configuration_data: { # required
666
+ # authorization_configuration: {
667
+ # lake_formation_configuration: {
668
+ # authorized_session_tag_value: "SessionTagValue",
669
+ # secure_namespace_info: {
670
+ # cluster_id: "ClusterId",
671
+ # namespace: "KubernetesNamespace",
672
+ # },
673
+ # query_engine_role_arn: "IAMRoleArn",
674
+ # },
675
+ # encryption_configuration: {
676
+ # in_transit_encryption_configuration: {
677
+ # tls_certificate_configuration: {
678
+ # certificate_provider_type: "PEM", # accepts PEM
679
+ # public_certificate_secret_arn: "SecretsManagerArn",
680
+ # private_certificate_secret_arn: "SecretsManagerArn",
681
+ # },
682
+ # },
683
+ # },
684
+ # },
685
+ # },
686
+ # tags: {
687
+ # "String128" => "StringEmpty256",
688
+ # },
689
+ # })
690
+ #
691
+ # @example Response structure
692
+ #
693
+ # resp.id #=> String
694
+ # resp.name #=> String
695
+ # resp.arn #=> String
696
+ #
697
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/CreateSecurityConfiguration AWS API Documentation
698
+ #
699
+ # @overload create_security_configuration(params = {})
700
+ # @param [Hash] params ({})
701
+ def create_security_configuration(params = {}, options = {})
702
+ req = build_request(:create_security_configuration, params)
703
+ req.send_request(options)
704
+ end
705
+
632
706
  # Creates a virtual cluster. Virtual cluster is a managed entity on
633
707
  # Amazon EMR on EKS. You can create, describe, list and delete virtual
634
708
  # clusters. They do not consume any additional resource in your system.
@@ -651,6 +725,9 @@ module Aws::EMRContainers
651
725
  # @option params [Hash<String,String>] :tags
652
726
  # The tags assigned to the virtual cluster.
653
727
  #
728
+ # @option params [String] :security_configuration_id
729
+ # The ID of the security configuration.
730
+ #
654
731
  # @return [Types::CreateVirtualClusterResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
655
732
  #
656
733
  # * {Types::CreateVirtualClusterResponse#id #id} => String
@@ -674,6 +751,7 @@ module Aws::EMRContainers
674
751
  # tags: {
675
752
  # "String128" => "StringEmpty256",
676
753
  # },
754
+ # security_configuration_id: "ResourceIdString",
677
755
  # })
678
756
  #
679
757
  # @example Response structure
@@ -985,6 +1063,52 @@ module Aws::EMRContainers
985
1063
  req.send_request(options)
986
1064
  end
987
1065
 
1066
+ # Displays detailed information about a specified security
1067
+ # configuration. Security configurations in Amazon EMR on EKS are
1068
+ # templates for different security setups. You can use security
1069
+ # configurations to configure the Lake Formation integration setup. You
1070
+ # can also create a security configuration to re-use a security setup
1071
+ # each time you create a virtual cluster.
1072
+ #
1073
+ # @option params [required, String] :id
1074
+ # The ID of the security configuration.
1075
+ #
1076
+ # @return [Types::DescribeSecurityConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1077
+ #
1078
+ # * {Types::DescribeSecurityConfigurationResponse#security_configuration #security_configuration} => Types::SecurityConfiguration
1079
+ #
1080
+ # @example Request syntax with placeholder values
1081
+ #
1082
+ # resp = client.describe_security_configuration({
1083
+ # id: "ResourceIdString", # required
1084
+ # })
1085
+ #
1086
+ # @example Response structure
1087
+ #
1088
+ # resp.security_configuration.id #=> String
1089
+ # resp.security_configuration.name #=> String
1090
+ # resp.security_configuration.arn #=> String
1091
+ # resp.security_configuration.created_at #=> Time
1092
+ # resp.security_configuration.created_by #=> String
1093
+ # resp.security_configuration.security_configuration_data.authorization_configuration.lake_formation_configuration.authorized_session_tag_value #=> String
1094
+ # resp.security_configuration.security_configuration_data.authorization_configuration.lake_formation_configuration.secure_namespace_info.cluster_id #=> String
1095
+ # resp.security_configuration.security_configuration_data.authorization_configuration.lake_formation_configuration.secure_namespace_info.namespace #=> String
1096
+ # resp.security_configuration.security_configuration_data.authorization_configuration.lake_formation_configuration.query_engine_role_arn #=> String
1097
+ # resp.security_configuration.security_configuration_data.authorization_configuration.encryption_configuration.in_transit_encryption_configuration.tls_certificate_configuration.certificate_provider_type #=> String, one of "PEM"
1098
+ # resp.security_configuration.security_configuration_data.authorization_configuration.encryption_configuration.in_transit_encryption_configuration.tls_certificate_configuration.public_certificate_secret_arn #=> String
1099
+ # resp.security_configuration.security_configuration_data.authorization_configuration.encryption_configuration.in_transit_encryption_configuration.tls_certificate_configuration.private_certificate_secret_arn #=> String
1100
+ # resp.security_configuration.tags #=> Hash
1101
+ # resp.security_configuration.tags["String128"] #=> String
1102
+ #
1103
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/DescribeSecurityConfiguration AWS API Documentation
1104
+ #
1105
+ # @overload describe_security_configuration(params = {})
1106
+ # @param [Hash] params ({})
1107
+ def describe_security_configuration(params = {}, options = {})
1108
+ req = build_request(:describe_security_configuration, params)
1109
+ req.send_request(options)
1110
+ end
1111
+
988
1112
  # Displays detailed information about a specified virtual cluster.
989
1113
  # Virtual cluster is a managed entity on Amazon EMR on EKS. You can
990
1114
  # create, describe, list and delete virtual clusters. They do not
@@ -1018,6 +1142,7 @@ module Aws::EMRContainers
1018
1142
  # resp.virtual_cluster.created_at #=> Time
1019
1143
  # resp.virtual_cluster.tags #=> Hash
1020
1144
  # resp.virtual_cluster.tags["String128"] #=> String
1145
+ # resp.virtual_cluster.security_configuration_id #=> String
1021
1146
  #
1022
1147
  # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/DescribeVirtualCluster AWS API Documentation
1023
1148
  #
@@ -1351,6 +1476,69 @@ module Aws::EMRContainers
1351
1476
  req.send_request(options)
1352
1477
  end
1353
1478
 
1479
+ # Lists security configurations based on a set of parameters. Security
1480
+ # configurations in Amazon EMR on EKS are templates for different
1481
+ # security setups. You can use security configurations to configure the
1482
+ # Lake Formation integration setup. You can also create a security
1483
+ # configuration to re-use a security setup each time you create a
1484
+ # virtual cluster.
1485
+ #
1486
+ # @option params [Time,DateTime,Date,Integer,String] :created_after
1487
+ # The date and time after which the security configuration was created.
1488
+ #
1489
+ # @option params [Time,DateTime,Date,Integer,String] :created_before
1490
+ # The date and time before which the security configuration was created.
1491
+ #
1492
+ # @option params [Integer] :max_results
1493
+ # The maximum number of security configurations the operation can list.
1494
+ #
1495
+ # @option params [String] :next_token
1496
+ # The token for the next set of security configurations to return.
1497
+ #
1498
+ # @return [Types::ListSecurityConfigurationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1499
+ #
1500
+ # * {Types::ListSecurityConfigurationsResponse#security_configurations #security_configurations} => Array&lt;Types::SecurityConfiguration&gt;
1501
+ # * {Types::ListSecurityConfigurationsResponse#next_token #next_token} => String
1502
+ #
1503
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
1504
+ #
1505
+ # @example Request syntax with placeholder values
1506
+ #
1507
+ # resp = client.list_security_configurations({
1508
+ # created_after: Time.now,
1509
+ # created_before: Time.now,
1510
+ # max_results: 1,
1511
+ # next_token: "NextToken",
1512
+ # })
1513
+ #
1514
+ # @example Response structure
1515
+ #
1516
+ # resp.security_configurations #=> Array
1517
+ # resp.security_configurations[0].id #=> String
1518
+ # resp.security_configurations[0].name #=> String
1519
+ # resp.security_configurations[0].arn #=> String
1520
+ # resp.security_configurations[0].created_at #=> Time
1521
+ # resp.security_configurations[0].created_by #=> String
1522
+ # resp.security_configurations[0].security_configuration_data.authorization_configuration.lake_formation_configuration.authorized_session_tag_value #=> String
1523
+ # resp.security_configurations[0].security_configuration_data.authorization_configuration.lake_formation_configuration.secure_namespace_info.cluster_id #=> String
1524
+ # resp.security_configurations[0].security_configuration_data.authorization_configuration.lake_formation_configuration.secure_namespace_info.namespace #=> String
1525
+ # resp.security_configurations[0].security_configuration_data.authorization_configuration.lake_formation_configuration.query_engine_role_arn #=> String
1526
+ # resp.security_configurations[0].security_configuration_data.authorization_configuration.encryption_configuration.in_transit_encryption_configuration.tls_certificate_configuration.certificate_provider_type #=> String, one of "PEM"
1527
+ # resp.security_configurations[0].security_configuration_data.authorization_configuration.encryption_configuration.in_transit_encryption_configuration.tls_certificate_configuration.public_certificate_secret_arn #=> String
1528
+ # resp.security_configurations[0].security_configuration_data.authorization_configuration.encryption_configuration.in_transit_encryption_configuration.tls_certificate_configuration.private_certificate_secret_arn #=> String
1529
+ # resp.security_configurations[0].tags #=> Hash
1530
+ # resp.security_configurations[0].tags["String128"] #=> String
1531
+ # resp.next_token #=> String
1532
+ #
1533
+ # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/ListSecurityConfigurations AWS API Documentation
1534
+ #
1535
+ # @overload list_security_configurations(params = {})
1536
+ # @param [Hash] params ({})
1537
+ def list_security_configurations(params = {}, options = {})
1538
+ req = build_request(:list_security_configurations, params)
1539
+ req.send_request(options)
1540
+ end
1541
+
1354
1542
  # Lists the tags assigned to the resources.
1355
1543
  #
1356
1544
  # @option params [required, String] :resource_arn
@@ -1410,6 +1598,12 @@ module Aws::EMRContainers
1410
1598
  # @option params [String] :next_token
1411
1599
  # The token for the next set of virtual clusters to return.
1412
1600
  #
1601
+ # @option params [Boolean] :eks_access_entry_integrated
1602
+ # Optional Boolean that specifies whether the operation should return
1603
+ # the virtual clusters that have the access entry integration enabled or
1604
+ # disabled. If not specified, the operation returns all applicable
1605
+ # virtual clusters.
1606
+ #
1413
1607
  # @return [Types::ListVirtualClustersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1414
1608
  #
1415
1609
  # * {Types::ListVirtualClustersResponse#virtual_clusters #virtual_clusters} => Array&lt;Types::VirtualCluster&gt;
@@ -1427,6 +1621,7 @@ module Aws::EMRContainers
1427
1621
  # states: ["RUNNING"], # accepts RUNNING, TERMINATING, TERMINATED, ARRESTED
1428
1622
  # max_results: 1,
1429
1623
  # next_token: "NextToken",
1624
+ # eks_access_entry_integrated: false,
1430
1625
  # })
1431
1626
  #
1432
1627
  # @example Response structure
@@ -1442,6 +1637,7 @@ module Aws::EMRContainers
1442
1637
  # resp.virtual_clusters[0].created_at #=> Time
1443
1638
  # resp.virtual_clusters[0].tags #=> Hash
1444
1639
  # resp.virtual_clusters[0].tags["String128"] #=> String
1640
+ # resp.virtual_clusters[0].security_configuration_id #=> String
1445
1641
  # resp.next_token #=> String
1446
1642
  #
1447
1643
  # @see http://docs.aws.amazon.com/goto/WebAPI/emr-containers-2020-10-01/ListVirtualClusters AWS API Documentation
@@ -1651,7 +1847,7 @@ module Aws::EMRContainers
1651
1847
  params: params,
1652
1848
  config: config)
1653
1849
  context[:gem_name] = 'aws-sdk-emrcontainers'
1654
- context[:gem_version] = '1.31.0'
1850
+ context[:gem_version] = '1.33.0'
1655
1851
  Seahorse::Client::Request.new(handlers, context)
1656
1852
  end
1657
1853
 
@@ -14,10 +14,13 @@ module Aws::EMRContainers
14
14
  include Seahorse::Model
15
15
 
16
16
  ACMCertArn = Shapes::StringShape.new(name: 'ACMCertArn')
17
+ AuthorizationConfiguration = Shapes::StructureShape.new(name: 'AuthorizationConfiguration')
17
18
  Base64Encoded = Shapes::StringShape.new(name: 'Base64Encoded')
19
+ Boolean = Shapes::BooleanShape.new(name: 'Boolean')
18
20
  CancelJobRunRequest = Shapes::StructureShape.new(name: 'CancelJobRunRequest')
19
21
  CancelJobRunResponse = Shapes::StructureShape.new(name: 'CancelJobRunResponse')
20
22
  Certificate = Shapes::StructureShape.new(name: 'Certificate')
23
+ CertificateProviderType = Shapes::StringShape.new(name: 'CertificateProviderType')
21
24
  ClientToken = Shapes::StringShape.new(name: 'ClientToken')
22
25
  CloudWatchMonitoringConfiguration = Shapes::StructureShape.new(name: 'CloudWatchMonitoringConfiguration')
23
26
  ClusterId = Shapes::StringShape.new(name: 'ClusterId')
@@ -32,6 +35,8 @@ module Aws::EMRContainers
32
35
  CreateJobTemplateResponse = Shapes::StructureShape.new(name: 'CreateJobTemplateResponse')
33
36
  CreateManagedEndpointRequest = Shapes::StructureShape.new(name: 'CreateManagedEndpointRequest')
34
37
  CreateManagedEndpointResponse = Shapes::StructureShape.new(name: 'CreateManagedEndpointResponse')
38
+ CreateSecurityConfigurationRequest = Shapes::StructureShape.new(name: 'CreateSecurityConfigurationRequest')
39
+ CreateSecurityConfigurationResponse = Shapes::StructureShape.new(name: 'CreateSecurityConfigurationResponse')
35
40
  CreateVirtualClusterRequest = Shapes::StructureShape.new(name: 'CreateVirtualClusterRequest')
36
41
  CreateVirtualClusterResponse = Shapes::StructureShape.new(name: 'CreateVirtualClusterResponse')
37
42
  CredentialType = Shapes::StringShape.new(name: 'CredentialType')
@@ -49,9 +54,13 @@ module Aws::EMRContainers
49
54
  DescribeJobTemplateResponse = Shapes::StructureShape.new(name: 'DescribeJobTemplateResponse')
50
55
  DescribeManagedEndpointRequest = Shapes::StructureShape.new(name: 'DescribeManagedEndpointRequest')
51
56
  DescribeManagedEndpointResponse = Shapes::StructureShape.new(name: 'DescribeManagedEndpointResponse')
57
+ DescribeSecurityConfigurationRequest = Shapes::StructureShape.new(name: 'DescribeSecurityConfigurationRequest')
58
+ DescribeSecurityConfigurationResponse = Shapes::StructureShape.new(name: 'DescribeSecurityConfigurationResponse')
52
59
  DescribeVirtualClusterRequest = Shapes::StructureShape.new(name: 'DescribeVirtualClusterRequest')
53
60
  DescribeVirtualClusterResponse = Shapes::StructureShape.new(name: 'DescribeVirtualClusterResponse')
61
+ EKSRequestThrottledException = Shapes::StructureShape.new(name: 'EKSRequestThrottledException')
54
62
  EksInfo = Shapes::StructureShape.new(name: 'EksInfo')
63
+ EncryptionConfiguration = Shapes::StructureShape.new(name: 'EncryptionConfiguration')
55
64
  Endpoint = Shapes::StructureShape.new(name: 'Endpoint')
56
65
  EndpointArn = Shapes::StringShape.new(name: 'EndpointArn')
57
66
  EndpointState = Shapes::StringShape.new(name: 'EndpointState')
@@ -66,6 +75,7 @@ module Aws::EMRContainers
66
75
  GetManagedEndpointSessionCredentialsRequest = Shapes::StructureShape.new(name: 'GetManagedEndpointSessionCredentialsRequest')
67
76
  GetManagedEndpointSessionCredentialsResponse = Shapes::StructureShape.new(name: 'GetManagedEndpointSessionCredentialsResponse')
68
77
  IAMRoleArn = Shapes::StringShape.new(name: 'IAMRoleArn')
78
+ InTransitEncryptionConfiguration = Shapes::StructureShape.new(name: 'InTransitEncryptionConfiguration')
69
79
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
70
80
  JavaInteger = Shapes::IntegerShape.new(name: 'JavaInteger')
71
81
  JobArn = Shapes::StringShape.new(name: 'JobArn')
@@ -80,12 +90,15 @@ module Aws::EMRContainers
80
90
  JobTemplates = Shapes::ListShape.new(name: 'JobTemplates')
81
91
  KmsKeyArn = Shapes::StringShape.new(name: 'KmsKeyArn')
82
92
  KubernetesNamespace = Shapes::StringShape.new(name: 'KubernetesNamespace')
93
+ LakeFormationConfiguration = Shapes::StructureShape.new(name: 'LakeFormationConfiguration')
83
94
  ListJobRunsRequest = Shapes::StructureShape.new(name: 'ListJobRunsRequest')
84
95
  ListJobRunsResponse = Shapes::StructureShape.new(name: 'ListJobRunsResponse')
85
96
  ListJobTemplatesRequest = Shapes::StructureShape.new(name: 'ListJobTemplatesRequest')
86
97
  ListJobTemplatesResponse = Shapes::StructureShape.new(name: 'ListJobTemplatesResponse')
87
98
  ListManagedEndpointsRequest = Shapes::StructureShape.new(name: 'ListManagedEndpointsRequest')
88
99
  ListManagedEndpointsResponse = Shapes::StructureShape.new(name: 'ListManagedEndpointsResponse')
100
+ ListSecurityConfigurationsRequest = Shapes::StructureShape.new(name: 'ListSecurityConfigurationsRequest')
101
+ ListSecurityConfigurationsResponse = Shapes::StructureShape.new(name: 'ListSecurityConfigurationsResponse')
89
102
  ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
90
103
  ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
91
104
  ListVirtualClustersRequest = Shapes::StructureShape.new(name: 'ListVirtualClustersRequest')
@@ -113,7 +126,14 @@ module Aws::EMRContainers
113
126
  RotationSize = Shapes::StringShape.new(name: 'RotationSize')
114
127
  RsiArn = Shapes::StringShape.new(name: 'RsiArn')
115
128
  S3MonitoringConfiguration = Shapes::StructureShape.new(name: 'S3MonitoringConfiguration')
129
+ SecretsManagerArn = Shapes::StringShape.new(name: 'SecretsManagerArn')
130
+ SecureNamespaceInfo = Shapes::StructureShape.new(name: 'SecureNamespaceInfo')
131
+ SecurityConfiguration = Shapes::StructureShape.new(name: 'SecurityConfiguration')
132
+ SecurityConfigurationArn = Shapes::StringShape.new(name: 'SecurityConfigurationArn')
133
+ SecurityConfigurationData = Shapes::StructureShape.new(name: 'SecurityConfigurationData')
134
+ SecurityConfigurations = Shapes::ListShape.new(name: 'SecurityConfigurations')
116
135
  SensitivePropertiesMap = Shapes::MapShape.new(name: 'SensitivePropertiesMap')
136
+ SessionTagValue = Shapes::StringShape.new(name: 'SessionTagValue')
117
137
  SparkSqlJobDriver = Shapes::StructureShape.new(name: 'SparkSqlJobDriver')
118
138
  SparkSqlParameters = Shapes::StringShape.new(name: 'SparkSqlParameters')
119
139
  SparkSubmitJobDriver = Shapes::StructureShape.new(name: 'SparkSubmitJobDriver')
@@ -126,6 +146,7 @@ module Aws::EMRContainers
126
146
  String256 = Shapes::StringShape.new(name: 'String256')
127
147
  StringEmpty256 = Shapes::StringShape.new(name: 'StringEmpty256')
128
148
  SubnetIds = Shapes::ListShape.new(name: 'SubnetIds')
149
+ TLSCertificateConfiguration = Shapes::StructureShape.new(name: 'TLSCertificateConfiguration')
129
150
  TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
130
151
  TagMap = Shapes::MapShape.new(name: 'TagMap')
131
152
  TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
@@ -147,6 +168,10 @@ module Aws::EMRContainers
147
168
  VirtualClusterStates = Shapes::ListShape.new(name: 'VirtualClusterStates')
148
169
  VirtualClusters = Shapes::ListShape.new(name: 'VirtualClusters')
149
170
 
171
+ AuthorizationConfiguration.add_member(:lake_formation_configuration, Shapes::ShapeRef.new(shape: LakeFormationConfiguration, location_name: "lakeFormationConfiguration"))
172
+ AuthorizationConfiguration.add_member(:encryption_configuration, Shapes::ShapeRef.new(shape: EncryptionConfiguration, location_name: "encryptionConfiguration"))
173
+ AuthorizationConfiguration.struct_class = Types::AuthorizationConfiguration
174
+
150
175
  CancelJobRunRequest.add_member(:id, Shapes::ShapeRef.new(shape: ResourceIdString, required: true, location: "uri", location_name: "jobRunId"))
151
176
  CancelJobRunRequest.add_member(:virtual_cluster_id, Shapes::ShapeRef.new(shape: ResourceIdString, required: true, location: "uri", location_name: "virtualClusterId"))
152
177
  CancelJobRunRequest.struct_class = Types::CancelJobRunRequest
@@ -219,10 +244,22 @@ module Aws::EMRContainers
219
244
  CreateManagedEndpointResponse.add_member(:virtual_cluster_id, Shapes::ShapeRef.new(shape: ResourceIdString, location_name: "virtualClusterId"))
220
245
  CreateManagedEndpointResponse.struct_class = Types::CreateManagedEndpointResponse
221
246
 
247
+ CreateSecurityConfigurationRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, required: true, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
248
+ CreateSecurityConfigurationRequest.add_member(:name, Shapes::ShapeRef.new(shape: ResourceNameString, required: true, location_name: "name"))
249
+ CreateSecurityConfigurationRequest.add_member(:security_configuration_data, Shapes::ShapeRef.new(shape: SecurityConfigurationData, required: true, location_name: "securityConfigurationData"))
250
+ CreateSecurityConfigurationRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
251
+ CreateSecurityConfigurationRequest.struct_class = Types::CreateSecurityConfigurationRequest
252
+
253
+ CreateSecurityConfigurationResponse.add_member(:id, Shapes::ShapeRef.new(shape: ResourceIdString, location_name: "id"))
254
+ CreateSecurityConfigurationResponse.add_member(:name, Shapes::ShapeRef.new(shape: ResourceNameString, location_name: "name"))
255
+ CreateSecurityConfigurationResponse.add_member(:arn, Shapes::ShapeRef.new(shape: SecurityConfigurationArn, location_name: "arn"))
256
+ CreateSecurityConfigurationResponse.struct_class = Types::CreateSecurityConfigurationResponse
257
+
222
258
  CreateVirtualClusterRequest.add_member(:name, Shapes::ShapeRef.new(shape: ResourceNameString, required: true, location_name: "name"))
223
259
  CreateVirtualClusterRequest.add_member(:container_provider, Shapes::ShapeRef.new(shape: ContainerProvider, required: true, location_name: "containerProvider"))
224
260
  CreateVirtualClusterRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, required: true, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
225
261
  CreateVirtualClusterRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
262
+ CreateVirtualClusterRequest.add_member(:security_configuration_id, Shapes::ShapeRef.new(shape: ResourceIdString, location_name: "securityConfigurationId"))
226
263
  CreateVirtualClusterRequest.struct_class = Types::CreateVirtualClusterRequest
227
264
 
228
265
  CreateVirtualClusterResponse.add_member(:id, Shapes::ShapeRef.new(shape: ResourceIdString, location_name: "id"))
@@ -276,15 +313,27 @@ module Aws::EMRContainers
276
313
  DescribeManagedEndpointResponse.add_member(:endpoint, Shapes::ShapeRef.new(shape: Endpoint, location_name: "endpoint"))
277
314
  DescribeManagedEndpointResponse.struct_class = Types::DescribeManagedEndpointResponse
278
315
 
316
+ DescribeSecurityConfigurationRequest.add_member(:id, Shapes::ShapeRef.new(shape: ResourceIdString, required: true, location: "uri", location_name: "securityConfigurationId"))
317
+ DescribeSecurityConfigurationRequest.struct_class = Types::DescribeSecurityConfigurationRequest
318
+
319
+ DescribeSecurityConfigurationResponse.add_member(:security_configuration, Shapes::ShapeRef.new(shape: SecurityConfiguration, location_name: "securityConfiguration"))
320
+ DescribeSecurityConfigurationResponse.struct_class = Types::DescribeSecurityConfigurationResponse
321
+
279
322
  DescribeVirtualClusterRequest.add_member(:id, Shapes::ShapeRef.new(shape: ResourceIdString, required: true, location: "uri", location_name: "virtualClusterId"))
280
323
  DescribeVirtualClusterRequest.struct_class = Types::DescribeVirtualClusterRequest
281
324
 
282
325
  DescribeVirtualClusterResponse.add_member(:virtual_cluster, Shapes::ShapeRef.new(shape: VirtualCluster, location_name: "virtualCluster"))
283
326
  DescribeVirtualClusterResponse.struct_class = Types::DescribeVirtualClusterResponse
284
327
 
328
+ EKSRequestThrottledException.add_member(:message, Shapes::ShapeRef.new(shape: String1024, location_name: "message"))
329
+ EKSRequestThrottledException.struct_class = Types::EKSRequestThrottledException
330
+
285
331
  EksInfo.add_member(:namespace, Shapes::ShapeRef.new(shape: KubernetesNamespace, location_name: "namespace"))
286
332
  EksInfo.struct_class = Types::EksInfo
287
333
 
334
+ EncryptionConfiguration.add_member(:in_transit_encryption_configuration, Shapes::ShapeRef.new(shape: InTransitEncryptionConfiguration, location_name: "inTransitEncryptionConfiguration"))
335
+ EncryptionConfiguration.struct_class = Types::EncryptionConfiguration
336
+
288
337
  Endpoint.add_member(:id, Shapes::ShapeRef.new(shape: ResourceIdString, location_name: "id"))
289
338
  Endpoint.add_member(:name, Shapes::ShapeRef.new(shape: ResourceNameString, location_name: "name"))
290
339
  Endpoint.add_member(:arn, Shapes::ShapeRef.new(shape: EndpointArn, location_name: "arn"))
@@ -327,6 +376,9 @@ module Aws::EMRContainers
327
376
  GetManagedEndpointSessionCredentialsResponse.add_member(:expires_at, Shapes::ShapeRef.new(shape: Date, location_name: "expiresAt"))
328
377
  GetManagedEndpointSessionCredentialsResponse.struct_class = Types::GetManagedEndpointSessionCredentialsResponse
329
378
 
379
+ InTransitEncryptionConfiguration.add_member(:tls_certificate_configuration, Shapes::ShapeRef.new(shape: TLSCertificateConfiguration, location_name: "tlsCertificateConfiguration"))
380
+ InTransitEncryptionConfiguration.struct_class = Types::InTransitEncryptionConfiguration
381
+
330
382
  InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: String1024, location_name: "message"))
331
383
  InternalServerException.struct_class = Types::InternalServerException
332
384
 
@@ -379,6 +431,11 @@ module Aws::EMRContainers
379
431
 
380
432
  JobTemplates.member = Shapes::ShapeRef.new(shape: JobTemplate)
381
433
 
434
+ LakeFormationConfiguration.add_member(:authorized_session_tag_value, Shapes::ShapeRef.new(shape: SessionTagValue, location_name: "authorizedSessionTagValue"))
435
+ LakeFormationConfiguration.add_member(:secure_namespace_info, Shapes::ShapeRef.new(shape: SecureNamespaceInfo, location_name: "secureNamespaceInfo"))
436
+ LakeFormationConfiguration.add_member(:query_engine_role_arn, Shapes::ShapeRef.new(shape: IAMRoleArn, location_name: "queryEngineRoleArn"))
437
+ LakeFormationConfiguration.struct_class = Types::LakeFormationConfiguration
438
+
382
439
  ListJobRunsRequest.add_member(:virtual_cluster_id, Shapes::ShapeRef.new(shape: ResourceIdString, required: true, location: "uri", location_name: "virtualClusterId"))
383
440
  ListJobRunsRequest.add_member(:created_before, Shapes::ShapeRef.new(shape: Date, location: "querystring", location_name: "createdBefore"))
384
441
  ListJobRunsRequest.add_member(:created_after, Shapes::ShapeRef.new(shape: Date, location: "querystring", location_name: "createdAfter"))
@@ -415,6 +472,16 @@ module Aws::EMRContainers
415
472
  ListManagedEndpointsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
416
473
  ListManagedEndpointsResponse.struct_class = Types::ListManagedEndpointsResponse
417
474
 
475
+ ListSecurityConfigurationsRequest.add_member(:created_after, Shapes::ShapeRef.new(shape: Date, location: "querystring", location_name: "createdAfter"))
476
+ ListSecurityConfigurationsRequest.add_member(:created_before, Shapes::ShapeRef.new(shape: Date, location: "querystring", location_name: "createdBefore"))
477
+ ListSecurityConfigurationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: JavaInteger, location: "querystring", location_name: "maxResults"))
478
+ ListSecurityConfigurationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
479
+ ListSecurityConfigurationsRequest.struct_class = Types::ListSecurityConfigurationsRequest
480
+
481
+ ListSecurityConfigurationsResponse.add_member(:security_configurations, Shapes::ShapeRef.new(shape: SecurityConfigurations, location_name: "securityConfigurations"))
482
+ ListSecurityConfigurationsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
483
+ ListSecurityConfigurationsResponse.struct_class = Types::ListSecurityConfigurationsResponse
484
+
418
485
  ListTagsForResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: RsiArn, required: true, location: "uri", location_name: "resourceArn"))
419
486
  ListTagsForResourceRequest.struct_class = Types::ListTagsForResourceRequest
420
487
 
@@ -428,6 +495,7 @@ module Aws::EMRContainers
428
495
  ListVirtualClustersRequest.add_member(:states, Shapes::ShapeRef.new(shape: VirtualClusterStates, location: "querystring", location_name: "states"))
429
496
  ListVirtualClustersRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: JavaInteger, location: "querystring", location_name: "maxResults"))
430
497
  ListVirtualClustersRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location: "querystring", location_name: "nextToken"))
498
+ ListVirtualClustersRequest.add_member(:eks_access_entry_integrated, Shapes::ShapeRef.new(shape: Boolean, location: "querystring", location_name: "eksAccessEntryIntegrated"))
431
499
  ListVirtualClustersRequest.struct_class = Types::ListVirtualClustersRequest
432
500
 
433
501
  ListVirtualClustersResponse.add_member(:virtual_clusters, Shapes::ShapeRef.new(shape: VirtualClusters, location_name: "virtualClusters"))
@@ -471,6 +539,24 @@ module Aws::EMRContainers
471
539
  S3MonitoringConfiguration.add_member(:log_uri, Shapes::ShapeRef.new(shape: UriString, required: true, location_name: "logUri"))
472
540
  S3MonitoringConfiguration.struct_class = Types::S3MonitoringConfiguration
473
541
 
542
+ SecureNamespaceInfo.add_member(:cluster_id, Shapes::ShapeRef.new(shape: ClusterId, location_name: "clusterId"))
543
+ SecureNamespaceInfo.add_member(:namespace, Shapes::ShapeRef.new(shape: KubernetesNamespace, location_name: "namespace"))
544
+ SecureNamespaceInfo.struct_class = Types::SecureNamespaceInfo
545
+
546
+ SecurityConfiguration.add_member(:id, Shapes::ShapeRef.new(shape: ResourceIdString, location_name: "id"))
547
+ SecurityConfiguration.add_member(:name, Shapes::ShapeRef.new(shape: ResourceNameString, location_name: "name"))
548
+ SecurityConfiguration.add_member(:arn, Shapes::ShapeRef.new(shape: SecurityConfigurationArn, location_name: "arn"))
549
+ SecurityConfiguration.add_member(:created_at, Shapes::ShapeRef.new(shape: Date, location_name: "createdAt"))
550
+ SecurityConfiguration.add_member(:created_by, Shapes::ShapeRef.new(shape: RequestIdentityUserArn, location_name: "createdBy"))
551
+ SecurityConfiguration.add_member(:security_configuration_data, Shapes::ShapeRef.new(shape: SecurityConfigurationData, location_name: "securityConfigurationData"))
552
+ SecurityConfiguration.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
553
+ SecurityConfiguration.struct_class = Types::SecurityConfiguration
554
+
555
+ SecurityConfigurationData.add_member(:authorization_configuration, Shapes::ShapeRef.new(shape: AuthorizationConfiguration, location_name: "authorizationConfiguration"))
556
+ SecurityConfigurationData.struct_class = Types::SecurityConfigurationData
557
+
558
+ SecurityConfigurations.member = Shapes::ShapeRef.new(shape: SecurityConfiguration)
559
+
474
560
  SensitivePropertiesMap.key = Shapes::ShapeRef.new(shape: String1024)
475
561
  SensitivePropertiesMap.value = Shapes::ShapeRef.new(shape: String1024)
476
562
 
@@ -504,6 +590,11 @@ module Aws::EMRContainers
504
590
 
505
591
  SubnetIds.member = Shapes::ShapeRef.new(shape: String256)
506
592
 
593
+ TLSCertificateConfiguration.add_member(:certificate_provider_type, Shapes::ShapeRef.new(shape: CertificateProviderType, location_name: "certificateProviderType"))
594
+ TLSCertificateConfiguration.add_member(:public_certificate_secret_arn, Shapes::ShapeRef.new(shape: SecretsManagerArn, location_name: "publicCertificateSecretArn"))
595
+ TLSCertificateConfiguration.add_member(:private_certificate_secret_arn, Shapes::ShapeRef.new(shape: SecretsManagerArn, location_name: "privateCertificateSecretArn"))
596
+ TLSCertificateConfiguration.struct_class = Types::TLSCertificateConfiguration
597
+
507
598
  TagKeyList.member = Shapes::ShapeRef.new(shape: String128)
508
599
 
509
600
  TagMap.key = Shapes::ShapeRef.new(shape: String128)
@@ -541,6 +632,7 @@ module Aws::EMRContainers
541
632
  VirtualCluster.add_member(:container_provider, Shapes::ShapeRef.new(shape: ContainerProvider, location_name: "containerProvider"))
542
633
  VirtualCluster.add_member(:created_at, Shapes::ShapeRef.new(shape: Date, location_name: "createdAt"))
543
634
  VirtualCluster.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
635
+ VirtualCluster.add_member(:security_configuration_id, Shapes::ShapeRef.new(shape: ResourceIdString, location_name: "securityConfigurationId"))
544
636
  VirtualCluster.struct_class = Types::VirtualCluster
545
637
 
546
638
  VirtualClusterStates.member = Shapes::ShapeRef.new(shape: VirtualClusterState)
@@ -597,6 +689,16 @@ module Aws::EMRContainers
597
689
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
598
690
  end)
599
691
 
692
+ api.add_operation(:create_security_configuration, Seahorse::Model::Operation.new.tap do |o|
693
+ o.name = "CreateSecurityConfiguration"
694
+ o.http_method = "POST"
695
+ o.http_request_uri = "/securityconfigurations"
696
+ o.input = Shapes::ShapeRef.new(shape: CreateSecurityConfigurationRequest)
697
+ o.output = Shapes::ShapeRef.new(shape: CreateSecurityConfigurationResponse)
698
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
699
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
700
+ end)
701
+
600
702
  api.add_operation(:create_virtual_cluster, Seahorse::Model::Operation.new.tap do |o|
601
703
  o.name = "CreateVirtualCluster"
602
704
  o.http_method = "POST"
@@ -606,6 +708,7 @@ module Aws::EMRContainers
606
708
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
607
709
  o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
608
710
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
711
+ o.errors << Shapes::ShapeRef.new(shape: EKSRequestThrottledException)
609
712
  end)
610
713
 
611
714
  api.add_operation(:delete_job_template, Seahorse::Model::Operation.new.tap do |o|
@@ -671,6 +774,17 @@ module Aws::EMRContainers
671
774
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
672
775
  end)
673
776
 
777
+ api.add_operation(:describe_security_configuration, Seahorse::Model::Operation.new.tap do |o|
778
+ o.name = "DescribeSecurityConfiguration"
779
+ o.http_method = "GET"
780
+ o.http_request_uri = "/securityconfigurations/{securityConfigurationId}"
781
+ o.input = Shapes::ShapeRef.new(shape: DescribeSecurityConfigurationRequest)
782
+ o.output = Shapes::ShapeRef.new(shape: DescribeSecurityConfigurationResponse)
783
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
784
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
785
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
786
+ end)
787
+
674
788
  api.add_operation(:describe_virtual_cluster, Seahorse::Model::Operation.new.tap do |o|
675
789
  o.name = "DescribeVirtualCluster"
676
790
  o.http_method = "GET"
@@ -742,6 +856,22 @@ module Aws::EMRContainers
742
856
  )
743
857
  end)
744
858
 
859
+ api.add_operation(:list_security_configurations, Seahorse::Model::Operation.new.tap do |o|
860
+ o.name = "ListSecurityConfigurations"
861
+ o.http_method = "GET"
862
+ o.http_request_uri = "/securityconfigurations"
863
+ o.input = Shapes::ShapeRef.new(shape: ListSecurityConfigurationsRequest)
864
+ o.output = Shapes::ShapeRef.new(shape: ListSecurityConfigurationsResponse)
865
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
866
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
867
+ o[:pager] = Aws::Pager.new(
868
+ limit_key: "max_results",
869
+ tokens: {
870
+ "next_token" => "next_token"
871
+ }
872
+ )
873
+ end)
874
+
745
875
  api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
746
876
  o.name = "ListTagsForResource"
747
877
  o.http_method = "GET"