aws-sdk-lakeformation 1.26.0 → 1.28.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.
@@ -0,0 +1,158 @@
1
+ # frozen_string_literal: true
2
+
3
+ # WARNING ABOUT GENERATED CODE
4
+ #
5
+ # This file is generated. See the contributing guide for more information:
6
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
7
+ #
8
+ # WARNING ABOUT GENERATED CODE
9
+
10
+
11
+ module Aws::LakeFormation
12
+ module Plugins
13
+ class Endpoints < Seahorse::Client::Plugin
14
+ option(
15
+ :endpoint_provider,
16
+ doc_type: 'Aws::LakeFormation::EndpointProvider',
17
+ docstring: 'The endpoint provider used to resolve endpoints. Any '\
18
+ 'object that responds to `#resolve_endpoint(parameters)` '\
19
+ 'where `parameters` is a Struct similar to '\
20
+ '`Aws::LakeFormation::EndpointParameters`'
21
+ ) do |cfg|
22
+ Aws::LakeFormation::EndpointProvider.new
23
+ end
24
+
25
+ # @api private
26
+ class Handler < Seahorse::Client::Handler
27
+ def call(context)
28
+ # If endpoint was discovered, do not resolve or apply the endpoint.
29
+ unless context[:discovered_endpoint]
30
+ params = parameters_for_operation(context)
31
+ endpoint = context.config.endpoint_provider.resolve_endpoint(params)
32
+
33
+ context.http_request.endpoint = endpoint.url
34
+ apply_endpoint_headers(context, endpoint.headers)
35
+ end
36
+
37
+ context[:endpoint_params] = params
38
+ context[:auth_scheme] =
39
+ Aws::Endpoints.resolve_auth_scheme(context, endpoint)
40
+
41
+ @handler.call(context)
42
+ end
43
+
44
+ private
45
+
46
+ def apply_endpoint_headers(context, headers)
47
+ headers.each do |key, values|
48
+ value = values
49
+ .compact
50
+ .map { |s| Seahorse::Util.escape_header_list_string(s.to_s) }
51
+ .join(',')
52
+
53
+ context.http_request.headers[key] = value
54
+ end
55
+ end
56
+
57
+ def parameters_for_operation(context)
58
+ case context.operation_name
59
+ when :add_lf_tags_to_resource
60
+ Aws::LakeFormation::Endpoints::AddLFTagsToResource.build(context)
61
+ when :assume_decorated_role_with_saml
62
+ Aws::LakeFormation::Endpoints::AssumeDecoratedRoleWithSAML.build(context)
63
+ when :batch_grant_permissions
64
+ Aws::LakeFormation::Endpoints::BatchGrantPermissions.build(context)
65
+ when :batch_revoke_permissions
66
+ Aws::LakeFormation::Endpoints::BatchRevokePermissions.build(context)
67
+ when :cancel_transaction
68
+ Aws::LakeFormation::Endpoints::CancelTransaction.build(context)
69
+ when :commit_transaction
70
+ Aws::LakeFormation::Endpoints::CommitTransaction.build(context)
71
+ when :create_data_cells_filter
72
+ Aws::LakeFormation::Endpoints::CreateDataCellsFilter.build(context)
73
+ when :create_lf_tag
74
+ Aws::LakeFormation::Endpoints::CreateLFTag.build(context)
75
+ when :delete_data_cells_filter
76
+ Aws::LakeFormation::Endpoints::DeleteDataCellsFilter.build(context)
77
+ when :delete_lf_tag
78
+ Aws::LakeFormation::Endpoints::DeleteLFTag.build(context)
79
+ when :delete_objects_on_cancel
80
+ Aws::LakeFormation::Endpoints::DeleteObjectsOnCancel.build(context)
81
+ when :deregister_resource
82
+ Aws::LakeFormation::Endpoints::DeregisterResource.build(context)
83
+ when :describe_resource
84
+ Aws::LakeFormation::Endpoints::DescribeResource.build(context)
85
+ when :describe_transaction
86
+ Aws::LakeFormation::Endpoints::DescribeTransaction.build(context)
87
+ when :extend_transaction
88
+ Aws::LakeFormation::Endpoints::ExtendTransaction.build(context)
89
+ when :get_data_lake_settings
90
+ Aws::LakeFormation::Endpoints::GetDataLakeSettings.build(context)
91
+ when :get_effective_permissions_for_path
92
+ Aws::LakeFormation::Endpoints::GetEffectivePermissionsForPath.build(context)
93
+ when :get_lf_tag
94
+ Aws::LakeFormation::Endpoints::GetLFTag.build(context)
95
+ when :get_query_state
96
+ Aws::LakeFormation::Endpoints::GetQueryState.build(context)
97
+ when :get_query_statistics
98
+ Aws::LakeFormation::Endpoints::GetQueryStatistics.build(context)
99
+ when :get_resource_lf_tags
100
+ Aws::LakeFormation::Endpoints::GetResourceLFTags.build(context)
101
+ when :get_table_objects
102
+ Aws::LakeFormation::Endpoints::GetTableObjects.build(context)
103
+ when :get_temporary_glue_partition_credentials
104
+ Aws::LakeFormation::Endpoints::GetTemporaryGluePartitionCredentials.build(context)
105
+ when :get_temporary_glue_table_credentials
106
+ Aws::LakeFormation::Endpoints::GetTemporaryGlueTableCredentials.build(context)
107
+ when :get_work_unit_results
108
+ Aws::LakeFormation::Endpoints::GetWorkUnitResults.build(context)
109
+ when :get_work_units
110
+ Aws::LakeFormation::Endpoints::GetWorkUnits.build(context)
111
+ when :grant_permissions
112
+ Aws::LakeFormation::Endpoints::GrantPermissions.build(context)
113
+ when :list_data_cells_filter
114
+ Aws::LakeFormation::Endpoints::ListDataCellsFilter.build(context)
115
+ when :list_lf_tags
116
+ Aws::LakeFormation::Endpoints::ListLFTags.build(context)
117
+ when :list_permissions
118
+ Aws::LakeFormation::Endpoints::ListPermissions.build(context)
119
+ when :list_resources
120
+ Aws::LakeFormation::Endpoints::ListResources.build(context)
121
+ when :list_table_storage_optimizers
122
+ Aws::LakeFormation::Endpoints::ListTableStorageOptimizers.build(context)
123
+ when :list_transactions
124
+ Aws::LakeFormation::Endpoints::ListTransactions.build(context)
125
+ when :put_data_lake_settings
126
+ Aws::LakeFormation::Endpoints::PutDataLakeSettings.build(context)
127
+ when :register_resource
128
+ Aws::LakeFormation::Endpoints::RegisterResource.build(context)
129
+ when :remove_lf_tags_from_resource
130
+ Aws::LakeFormation::Endpoints::RemoveLFTagsFromResource.build(context)
131
+ when :revoke_permissions
132
+ Aws::LakeFormation::Endpoints::RevokePermissions.build(context)
133
+ when :search_databases_by_lf_tags
134
+ Aws::LakeFormation::Endpoints::SearchDatabasesByLFTags.build(context)
135
+ when :search_tables_by_lf_tags
136
+ Aws::LakeFormation::Endpoints::SearchTablesByLFTags.build(context)
137
+ when :start_query_planning
138
+ Aws::LakeFormation::Endpoints::StartQueryPlanning.build(context)
139
+ when :start_transaction
140
+ Aws::LakeFormation::Endpoints::StartTransaction.build(context)
141
+ when :update_lf_tag
142
+ Aws::LakeFormation::Endpoints::UpdateLFTag.build(context)
143
+ when :update_resource
144
+ Aws::LakeFormation::Endpoints::UpdateResource.build(context)
145
+ when :update_table_objects
146
+ Aws::LakeFormation::Endpoints::UpdateTableObjects.build(context)
147
+ when :update_table_storage_optimizer
148
+ Aws::LakeFormation::Endpoints::UpdateTableStorageOptimizer.build(context)
149
+ end
150
+ end
151
+ end
152
+
153
+ def add_handlers(handlers, _config)
154
+ handlers.add(Handler, step: :build, priority: 75)
155
+ end
156
+ end
157
+ end
158
+ end
@@ -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
  #
@@ -13,9 +13,13 @@ require 'aws-sigv4'
13
13
 
14
14
  require_relative 'aws-sdk-lakeformation/types'
15
15
  require_relative 'aws-sdk-lakeformation/client_api'
16
+ require_relative 'aws-sdk-lakeformation/plugins/endpoints.rb'
16
17
  require_relative 'aws-sdk-lakeformation/client'
17
18
  require_relative 'aws-sdk-lakeformation/errors'
18
19
  require_relative 'aws-sdk-lakeformation/resource'
20
+ require_relative 'aws-sdk-lakeformation/endpoint_parameters'
21
+ require_relative 'aws-sdk-lakeformation/endpoint_provider'
22
+ require_relative 'aws-sdk-lakeformation/endpoints'
19
23
  require_relative 'aws-sdk-lakeformation/customizations'
20
24
 
21
25
  # This module provides support for AWS Lake Formation. This module is available in the
@@ -48,6 +52,6 @@ require_relative 'aws-sdk-lakeformation/customizations'
48
52
  # @!group service
49
53
  module Aws::LakeFormation
50
54
 
51
- GEM_VERSION = '1.26.0'
55
+ GEM_VERSION = '1.28.0'
52
56
 
53
57
  end
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.26.0
4
+ version: 1.28.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-03-22 00:00:00.000000000 Z
11
+ date: 2022-10-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.127.0
22
+ version: 3.165.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.127.0
32
+ version: 3.165.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -59,7 +59,11 @@ files:
59
59
  - lib/aws-sdk-lakeformation/client.rb
60
60
  - lib/aws-sdk-lakeformation/client_api.rb
61
61
  - lib/aws-sdk-lakeformation/customizations.rb
62
+ - lib/aws-sdk-lakeformation/endpoint_parameters.rb
63
+ - lib/aws-sdk-lakeformation/endpoint_provider.rb
64
+ - lib/aws-sdk-lakeformation/endpoints.rb
62
65
  - lib/aws-sdk-lakeformation/errors.rb
66
+ - lib/aws-sdk-lakeformation/plugins/endpoints.rb
63
67
  - lib/aws-sdk-lakeformation/resource.rb
64
68
  - lib/aws-sdk-lakeformation/types.rb
65
69
  homepage: https://github.com/aws/aws-sdk-ruby