aws-sdk-lakeformation 1.26.0 → 1.27.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 +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
|