aws-sdk-lakeformation 1.26.0 → 1.27.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-lakeformation/client.rb +74 -8
- data/lib/aws-sdk-lakeformation/client_api.rb +29 -0
- data/lib/aws-sdk-lakeformation/types.rb +73 -0
- data/lib/aws-sdk-lakeformation.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f408a75a960c931b6a2b4c88eae1dd513ad341c7bc8aea2ec42cf7ea8a1dbf90
|
4
|
+
data.tar.gz: d90872ab11a0a748f4ca8991e19bcb749f655d4b333f378f9fc04984abe824e1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 76de4c2bc9732757c8992d8a85b44cb73d040dfc549007b62aa46557c497f138a3e14de6d437a2364b60672437b2a7100cef2b2e7c97303db992fcdc80b25c63
|
7
|
+
data.tar.gz: 68f9c009e40d4cda9a6c5dc43ab3767c49fc662fcb66fc95ae7ee06a429d4000f5ee551491732c8de3b97c31a33cd5b8f75ba143ee76a2686a077853632b20c5
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,11 @@
|
|
1
1
|
Unreleased Changes
|
2
2
|
------------------
|
3
3
|
|
4
|
+
1.27.0 (2022-08-17)
|
5
|
+
------------------
|
6
|
+
|
7
|
+
* Feature - This release adds a new API support "AssumeDecoratedRoleWithSAML" and also release updates the corresponding documentation.
|
8
|
+
|
4
9
|
1.26.0 (2022-03-22)
|
5
10
|
------------------
|
6
11
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.27.0
|
@@ -450,6 +450,73 @@ module Aws::LakeFormation
|
|
450
450
|
req.send_request(options)
|
451
451
|
end
|
452
452
|
|
453
|
+
# Allows a caller to assume an IAM role decorated as the SAML user
|
454
|
+
# specified in the SAML assertion included in the request. This
|
455
|
+
# decoration allows Lake Formation to enforce access policies against
|
456
|
+
# the SAML users and groups. This API operation requires SAML federation
|
457
|
+
# setup in the caller’s account as it can only be called with valid SAML
|
458
|
+
# assertions. Lake Formation does not scope down the permission of the
|
459
|
+
# assumed role. All permissions attached to the role via the SAML
|
460
|
+
# federation setup will be included in the role session.
|
461
|
+
#
|
462
|
+
# This decorated role is expected to access data in Amazon S3 by getting
|
463
|
+
# temporary access from Lake Formation which is authorized via the
|
464
|
+
# virtual API `GetDataAccess`. Therefore, all SAML roles that can be
|
465
|
+
# assumed via `AssumeDecoratedRoleWithSAML` must at a minimum include
|
466
|
+
# `lakeformation:GetDataAccess` in their role policies. A typical IAM
|
467
|
+
# policy attached to such a role would look as follows:
|
468
|
+
#
|
469
|
+
# @option params [required, String] :saml_assertion
|
470
|
+
# A SAML assertion consisting of an assertion statement for the user who
|
471
|
+
# needs temporary credentials. This must match the SAML assertion that
|
472
|
+
# was issued to IAM. This must be Base64 encoded.
|
473
|
+
#
|
474
|
+
# @option params [required, String] :role_arn
|
475
|
+
# The role that represents an IAM principal whose scope down policy
|
476
|
+
# allows it to call credential vending APIs such as
|
477
|
+
# `GetTemporaryTableCredentials`. The caller must also have iam:PassRole
|
478
|
+
# permission on this role.
|
479
|
+
#
|
480
|
+
# @option params [required, String] :principal_arn
|
481
|
+
# The Amazon Resource Name (ARN) of the SAML provider in IAM that
|
482
|
+
# describes the IdP.
|
483
|
+
#
|
484
|
+
# @option params [Integer] :duration_seconds
|
485
|
+
# The time period, between 900 and 43,200 seconds, for the timeout of
|
486
|
+
# the temporary credentials.
|
487
|
+
#
|
488
|
+
# @return [Types::AssumeDecoratedRoleWithSAMLResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
489
|
+
#
|
490
|
+
# * {Types::AssumeDecoratedRoleWithSAMLResponse#access_key_id #access_key_id} => String
|
491
|
+
# * {Types::AssumeDecoratedRoleWithSAMLResponse#secret_access_key #secret_access_key} => String
|
492
|
+
# * {Types::AssumeDecoratedRoleWithSAMLResponse#session_token #session_token} => String
|
493
|
+
# * {Types::AssumeDecoratedRoleWithSAMLResponse#expiration #expiration} => Time
|
494
|
+
#
|
495
|
+
# @example Request syntax with placeholder values
|
496
|
+
#
|
497
|
+
# resp = client.assume_decorated_role_with_saml({
|
498
|
+
# saml_assertion: "SAMLAssertionString", # required
|
499
|
+
# role_arn: "IAMRoleArn", # required
|
500
|
+
# principal_arn: "IAMSAMLProviderArn", # required
|
501
|
+
# duration_seconds: 1,
|
502
|
+
# })
|
503
|
+
#
|
504
|
+
# @example Response structure
|
505
|
+
#
|
506
|
+
# resp.access_key_id #=> String
|
507
|
+
# resp.secret_access_key #=> String
|
508
|
+
# resp.session_token #=> String
|
509
|
+
# resp.expiration #=> Time
|
510
|
+
#
|
511
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/AssumeDecoratedRoleWithSAML AWS API Documentation
|
512
|
+
#
|
513
|
+
# @overload assume_decorated_role_with_saml(params = {})
|
514
|
+
# @param [Hash] params ({})
|
515
|
+
def assume_decorated_role_with_saml(params = {}, options = {})
|
516
|
+
req = build_request(:assume_decorated_role_with_saml, params)
|
517
|
+
req.send_request(options)
|
518
|
+
end
|
519
|
+
|
453
520
|
# Batch operation to grant permissions to the principal.
|
454
521
|
#
|
455
522
|
# @option params [String] :catalog_id
|
@@ -868,13 +935,12 @@ module Aws::LakeFormation
|
|
868
935
|
req.send_request(options)
|
869
936
|
end
|
870
937
|
|
871
|
-
# Deletes the specified LF-tag key name. If the
|
872
|
-
#
|
873
|
-
#
|
874
|
-
#
|
875
|
-
#
|
876
|
-
#
|
877
|
-
# untagging resources with this LF-tag key.
|
938
|
+
# Deletes the specified LF-tag given a key name. If the input parameter
|
939
|
+
# tag key was not found, then the operation will throw an exception.
|
940
|
+
# When you delete an LF-tag, the `LFTagPolicy` attached to the LF-tag
|
941
|
+
# becomes invalid. If the deleted LF-tag was still assigned to any
|
942
|
+
# resource, the tag policy attach to the deleted LF-tag will no longer
|
943
|
+
# be applied to the resource.
|
878
944
|
#
|
879
945
|
# @option params [String] :catalog_id
|
880
946
|
# The identifier for the Data Catalog. By default, the account ID. The
|
@@ -3018,7 +3084,7 @@ module Aws::LakeFormation
|
|
3018
3084
|
params: params,
|
3019
3085
|
config: config)
|
3020
3086
|
context[:gem_name] = 'aws-sdk-lakeformation'
|
3021
|
-
context[:gem_version] = '1.
|
3087
|
+
context[:gem_version] = '1.27.0'
|
3022
3088
|
Seahorse::Client::Request.new(handlers, context)
|
3023
3089
|
end
|
3024
3090
|
|
@@ -20,6 +20,8 @@ module Aws::LakeFormation
|
|
20
20
|
AddObjectInput = Shapes::StructureShape.new(name: 'AddObjectInput')
|
21
21
|
AllRowsWildcard = Shapes::StructureShape.new(name: 'AllRowsWildcard')
|
22
22
|
AlreadyExistsException = Shapes::StructureShape.new(name: 'AlreadyExistsException')
|
23
|
+
AssumeDecoratedRoleWithSAMLRequest = Shapes::StructureShape.new(name: 'AssumeDecoratedRoleWithSAMLRequest')
|
24
|
+
AssumeDecoratedRoleWithSAMLResponse = Shapes::StructureShape.new(name: 'AssumeDecoratedRoleWithSAMLResponse')
|
23
25
|
AuditContext = Shapes::StructureShape.new(name: 'AuditContext')
|
24
26
|
AuditContextString = Shapes::StringShape.new(name: 'AuditContextString')
|
25
27
|
AuthorizedSessionTagValueList = Shapes::ListShape.new(name: 'AuthorizedSessionTagValueList')
|
@@ -120,6 +122,7 @@ module Aws::LakeFormation
|
|
120
122
|
GrantPermissionsRequest = Shapes::StructureShape.new(name: 'GrantPermissionsRequest')
|
121
123
|
GrantPermissionsResponse = Shapes::StructureShape.new(name: 'GrantPermissionsResponse')
|
122
124
|
IAMRoleArn = Shapes::StringShape.new(name: 'IAMRoleArn')
|
125
|
+
IAMSAMLProviderArn = Shapes::StringShape.new(name: 'IAMSAMLProviderArn')
|
123
126
|
Identifier = Shapes::StringShape.new(name: 'Identifier')
|
124
127
|
Integer = Shapes::IntegerShape.new(name: 'Integer')
|
125
128
|
InternalServiceException = Shapes::StructureShape.new(name: 'InternalServiceException')
|
@@ -198,6 +201,7 @@ module Aws::LakeFormation
|
|
198
201
|
RevokePermissionsRequest = Shapes::StructureShape.new(name: 'RevokePermissionsRequest')
|
199
202
|
RevokePermissionsResponse = Shapes::StructureShape.new(name: 'RevokePermissionsResponse')
|
200
203
|
RowFilter = Shapes::StructureShape.new(name: 'RowFilter')
|
204
|
+
SAMLAssertionString = Shapes::StringShape.new(name: 'SAMLAssertionString')
|
201
205
|
SearchDatabasesByLFTagsRequest = Shapes::StructureShape.new(name: 'SearchDatabasesByLFTagsRequest')
|
202
206
|
SearchDatabasesByLFTagsResponse = Shapes::StructureShape.new(name: 'SearchDatabasesByLFTagsResponse')
|
203
207
|
SearchTablesByLFTagsRequest = Shapes::StructureShape.new(name: 'SearchTablesByLFTagsRequest')
|
@@ -287,6 +291,18 @@ module Aws::LakeFormation
|
|
287
291
|
AlreadyExistsException.add_member(:message, Shapes::ShapeRef.new(shape: MessageString, location_name: "Message"))
|
288
292
|
AlreadyExistsException.struct_class = Types::AlreadyExistsException
|
289
293
|
|
294
|
+
AssumeDecoratedRoleWithSAMLRequest.add_member(:saml_assertion, Shapes::ShapeRef.new(shape: SAMLAssertionString, required: true, location_name: "SAMLAssertion"))
|
295
|
+
AssumeDecoratedRoleWithSAMLRequest.add_member(:role_arn, Shapes::ShapeRef.new(shape: IAMRoleArn, required: true, location_name: "RoleArn"))
|
296
|
+
AssumeDecoratedRoleWithSAMLRequest.add_member(:principal_arn, Shapes::ShapeRef.new(shape: IAMSAMLProviderArn, required: true, location_name: "PrincipalArn"))
|
297
|
+
AssumeDecoratedRoleWithSAMLRequest.add_member(:duration_seconds, Shapes::ShapeRef.new(shape: CredentialTimeoutDurationSecondInteger, location_name: "DurationSeconds"))
|
298
|
+
AssumeDecoratedRoleWithSAMLRequest.struct_class = Types::AssumeDecoratedRoleWithSAMLRequest
|
299
|
+
|
300
|
+
AssumeDecoratedRoleWithSAMLResponse.add_member(:access_key_id, Shapes::ShapeRef.new(shape: AccessKeyIdString, location_name: "AccessKeyId"))
|
301
|
+
AssumeDecoratedRoleWithSAMLResponse.add_member(:secret_access_key, Shapes::ShapeRef.new(shape: SecretAccessKeyString, location_name: "SecretAccessKey"))
|
302
|
+
AssumeDecoratedRoleWithSAMLResponse.add_member(:session_token, Shapes::ShapeRef.new(shape: SessionTokenString, location_name: "SessionToken"))
|
303
|
+
AssumeDecoratedRoleWithSAMLResponse.add_member(:expiration, Shapes::ShapeRef.new(shape: ExpirationTimestamp, location_name: "Expiration"))
|
304
|
+
AssumeDecoratedRoleWithSAMLResponse.struct_class = Types::AssumeDecoratedRoleWithSAMLResponse
|
305
|
+
|
290
306
|
AuditContext.add_member(:additional_audit_context, Shapes::ShapeRef.new(shape: AuditContextString, location_name: "AdditionalAuditContext"))
|
291
307
|
AuditContext.struct_class = Types::AuditContext
|
292
308
|
|
@@ -1007,6 +1023,19 @@ module Aws::LakeFormation
|
|
1007
1023
|
o.errors << Shapes::ShapeRef.new(shape: ConcurrentModificationException)
|
1008
1024
|
end)
|
1009
1025
|
|
1026
|
+
api.add_operation(:assume_decorated_role_with_saml, Seahorse::Model::Operation.new.tap do |o|
|
1027
|
+
o.name = "AssumeDecoratedRoleWithSAML"
|
1028
|
+
o.http_method = "POST"
|
1029
|
+
o.http_request_uri = "/AssumeDecoratedRoleWithSAML"
|
1030
|
+
o.input = Shapes::ShapeRef.new(shape: AssumeDecoratedRoleWithSAMLRequest)
|
1031
|
+
o.output = Shapes::ShapeRef.new(shape: AssumeDecoratedRoleWithSAMLResponse)
|
1032
|
+
o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
|
1033
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalServiceException)
|
1034
|
+
o.errors << Shapes::ShapeRef.new(shape: OperationTimeoutException)
|
1035
|
+
o.errors << Shapes::ShapeRef.new(shape: EntityNotFoundException)
|
1036
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
1037
|
+
end)
|
1038
|
+
|
1010
1039
|
api.add_operation(:batch_grant_permissions, Seahorse::Model::Operation.new.tap do |o|
|
1011
1040
|
o.name = "BatchGrantPermissions"
|
1012
1041
|
o.http_method = "POST"
|
@@ -192,6 +192,79 @@ module Aws::LakeFormation
|
|
192
192
|
include Aws::Structure
|
193
193
|
end
|
194
194
|
|
195
|
+
# @note When making an API call, you may pass AssumeDecoratedRoleWithSAMLRequest
|
196
|
+
# data as a hash:
|
197
|
+
#
|
198
|
+
# {
|
199
|
+
# saml_assertion: "SAMLAssertionString", # required
|
200
|
+
# role_arn: "IAMRoleArn", # required
|
201
|
+
# principal_arn: "IAMSAMLProviderArn", # required
|
202
|
+
# duration_seconds: 1,
|
203
|
+
# }
|
204
|
+
#
|
205
|
+
# @!attribute [rw] saml_assertion
|
206
|
+
# A SAML assertion consisting of an assertion statement for the user
|
207
|
+
# who needs temporary credentials. This must match the SAML assertion
|
208
|
+
# that was issued to IAM. This must be Base64 encoded.
|
209
|
+
# @return [String]
|
210
|
+
#
|
211
|
+
# @!attribute [rw] role_arn
|
212
|
+
# The role that represents an IAM principal whose scope down policy
|
213
|
+
# allows it to call credential vending APIs such as
|
214
|
+
# `GetTemporaryTableCredentials`. The caller must also have
|
215
|
+
# iam:PassRole permission on this role.
|
216
|
+
# @return [String]
|
217
|
+
#
|
218
|
+
# @!attribute [rw] principal_arn
|
219
|
+
# The Amazon Resource Name (ARN) of the SAML provider in IAM that
|
220
|
+
# describes the IdP.
|
221
|
+
# @return [String]
|
222
|
+
#
|
223
|
+
# @!attribute [rw] duration_seconds
|
224
|
+
# The time period, between 900 and 43,200 seconds, for the timeout of
|
225
|
+
# the temporary credentials.
|
226
|
+
# @return [Integer]
|
227
|
+
#
|
228
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/AssumeDecoratedRoleWithSAMLRequest AWS API Documentation
|
229
|
+
#
|
230
|
+
class AssumeDecoratedRoleWithSAMLRequest < Struct.new(
|
231
|
+
:saml_assertion,
|
232
|
+
:role_arn,
|
233
|
+
:principal_arn,
|
234
|
+
:duration_seconds)
|
235
|
+
SENSITIVE = []
|
236
|
+
include Aws::Structure
|
237
|
+
end
|
238
|
+
|
239
|
+
# @!attribute [rw] access_key_id
|
240
|
+
# The access key ID for the temporary credentials. (The access key
|
241
|
+
# consists of an access key ID and a secret key).
|
242
|
+
# @return [String]
|
243
|
+
#
|
244
|
+
# @!attribute [rw] secret_access_key
|
245
|
+
# The secret key for the temporary credentials. (The access key
|
246
|
+
# consists of an access key ID and a secret key).
|
247
|
+
# @return [String]
|
248
|
+
#
|
249
|
+
# @!attribute [rw] session_token
|
250
|
+
# The session token for the temporary credentials.
|
251
|
+
# @return [String]
|
252
|
+
#
|
253
|
+
# @!attribute [rw] expiration
|
254
|
+
# The date and time when the temporary credentials expire.
|
255
|
+
# @return [Time]
|
256
|
+
#
|
257
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/lakeformation-2017-03-31/AssumeDecoratedRoleWithSAMLResponse AWS API Documentation
|
258
|
+
#
|
259
|
+
class AssumeDecoratedRoleWithSAMLResponse < Struct.new(
|
260
|
+
:access_key_id,
|
261
|
+
:secret_access_key,
|
262
|
+
:session_token,
|
263
|
+
:expiration)
|
264
|
+
SENSITIVE = []
|
265
|
+
include Aws::Structure
|
266
|
+
end
|
267
|
+
|
195
268
|
# A structure used to include auditing information on the privileged
|
196
269
|
# API.
|
197
270
|
#
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aws-sdk-lakeformation
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.27.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: 2022-
|
11
|
+
date: 2022-08-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-core
|