aws-sdk-core 3.236.0 → 3.239.2

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,299 @@
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
+ module Aws::Signin
11
+ module Types
12
+
13
+ # Error thrown for access denied scenarios with flexible HTTP status
14
+ # mapping
15
+ #
16
+ # Runtime HTTP Status Code Mapping:
17
+ #
18
+ # * HTTP 401 (Unauthorized): TOKEN\_EXPIRED, AUTHCODE\_EXPIRED
19
+ # * HTTP 403 (Forbidden): USER\_CREDENTIALS\_CHANGED,
20
+ # INSUFFICIENT\_PERMISSIONS
21
+ #
22
+ # The specific HTTP status code is determined at runtime based on the
23
+ # error enum value. Consumers should use the error field to determine
24
+ # the specific access denial reason.
25
+ #
26
+ # @!attribute [rw] error
27
+ # OAuth 2.0 error code indicating the specific type of access denial
28
+ # Can be TOKEN\_EXPIRED, AUTHCODE\_EXPIRED,
29
+ # USER\_CREDENTIALS\_CHANGED, or INSUFFICIENT\_PERMISSIONS
30
+ # @return [String]
31
+ #
32
+ # @!attribute [rw] message
33
+ # Detailed message explaining the access denial Provides specific
34
+ # information about why access was denied
35
+ # @return [String]
36
+ #
37
+ # @see http://docs.aws.amazon.com/goto/WebAPI/signin-2023-01-01/AccessDeniedException AWS API Documentation
38
+ #
39
+ class AccessDeniedException < Struct.new(
40
+ :error,
41
+ :message)
42
+ SENSITIVE = []
43
+ include Aws::Structure
44
+ end
45
+
46
+ # AWS credentials structure containing temporary access credentials
47
+ #
48
+ # The scoped-down, 15 minute duration AWS credentials. Scoping down will
49
+ # be based on CLI policy (CLI team needs to create it). Similar to cloud
50
+ # shell implementation.
51
+ #
52
+ # @!attribute [rw] access_key_id
53
+ # AWS access key ID for temporary credentials
54
+ # @return [String]
55
+ #
56
+ # @!attribute [rw] secret_access_key
57
+ # AWS secret access key for temporary credentials
58
+ # @return [String]
59
+ #
60
+ # @!attribute [rw] session_token
61
+ # AWS session token for temporary credentials
62
+ # @return [String]
63
+ #
64
+ # @see http://docs.aws.amazon.com/goto/WebAPI/signin-2023-01-01/AccessToken AWS API Documentation
65
+ #
66
+ class AccessToken < Struct.new(
67
+ :access_key_id,
68
+ :secret_access_key,
69
+ :session_token)
70
+ SENSITIVE = []
71
+ include Aws::Structure
72
+ end
73
+
74
+ # Input structure for CreateOAuth2Token operation
75
+ #
76
+ # Contains flattened token operation inputs for both authorization code
77
+ # and refresh token flows. The operation type is determined by the
78
+ # grant\_type parameter in the request body.
79
+ #
80
+ # @!attribute [rw] token_input
81
+ # Flattened token operation inputs The specific operation is
82
+ # determined by grant\_type in the request body
83
+ # @return [Types::CreateOAuth2TokenRequestBody]
84
+ #
85
+ # @see http://docs.aws.amazon.com/goto/WebAPI/signin-2023-01-01/CreateOAuth2TokenRequest AWS API Documentation
86
+ #
87
+ class CreateOAuth2TokenRequest < Struct.new(
88
+ :token_input)
89
+ SENSITIVE = []
90
+ include Aws::Structure
91
+ end
92
+
93
+ # Request body payload for CreateOAuth2Token operation
94
+ #
95
+ # The operation type is determined by the grant\_type parameter:
96
+ #
97
+ # * grant\_type=authorization\_code: Requires code, redirect\_uri,
98
+ # code\_verifier
99
+ # * grant\_type=refresh\_token: Requires refresh\_token
100
+ #
101
+ # @!attribute [rw] client_id
102
+ # The client identifier (ARN) used during Sign-In onboarding Required
103
+ # for both authorization code and refresh token flows
104
+ # @return [String]
105
+ #
106
+ # @!attribute [rw] grant_type
107
+ # OAuth 2.0 grant type - determines which flow is used Must be
108
+ # "authorization\_code" or "refresh\_token"
109
+ # @return [String]
110
+ #
111
+ # @!attribute [rw] code
112
+ # The authorization code received from /v1/authorize Required only
113
+ # when grant\_type=authorization\_code
114
+ # @return [String]
115
+ #
116
+ # @!attribute [rw] redirect_uri
117
+ # The redirect URI that must match the original authorization request
118
+ # Required only when grant\_type=authorization\_code
119
+ # @return [String]
120
+ #
121
+ # @!attribute [rw] code_verifier
122
+ # PKCE code verifier to prove possession of the original code
123
+ # challenge Required only when grant\_type=authorization\_code
124
+ # @return [String]
125
+ #
126
+ # @!attribute [rw] refresh_token
127
+ # The refresh token returned from auth\_code redemption Required only
128
+ # when grant\_type=refresh\_token
129
+ # @return [String]
130
+ #
131
+ # @see http://docs.aws.amazon.com/goto/WebAPI/signin-2023-01-01/CreateOAuth2TokenRequestBody AWS API Documentation
132
+ #
133
+ class CreateOAuth2TokenRequestBody < Struct.new(
134
+ :client_id,
135
+ :grant_type,
136
+ :code,
137
+ :redirect_uri,
138
+ :code_verifier,
139
+ :refresh_token)
140
+ SENSITIVE = [:refresh_token]
141
+ include Aws::Structure
142
+ end
143
+
144
+ # Output structure for CreateOAuth2Token operation
145
+ #
146
+ # Contains flattened token operation outputs for both authorization code
147
+ # and refresh token flows. The response content depends on the
148
+ # grant\_type from the original request.
149
+ #
150
+ # @!attribute [rw] token_output
151
+ # Flattened token operation outputs The specific response fields
152
+ # depend on the grant\_type used in the request
153
+ # @return [Types::CreateOAuth2TokenResponseBody]
154
+ #
155
+ # @see http://docs.aws.amazon.com/goto/WebAPI/signin-2023-01-01/CreateOAuth2TokenResponse AWS API Documentation
156
+ #
157
+ class CreateOAuth2TokenResponse < Struct.new(
158
+ :token_output)
159
+ SENSITIVE = []
160
+ include Aws::Structure
161
+ end
162
+
163
+ # Response body payload for CreateOAuth2Token operation
164
+ #
165
+ # The response content depends on the grant\_type from the request:
166
+ #
167
+ # * grant\_type=authorization\_code: Returns all fields including
168
+ # refresh\_token and id\_token
169
+ # * grant\_type=refresh\_token: Returns access\_token, token\_type,
170
+ # expires\_in, refresh\_token (no id\_token)
171
+ #
172
+ # @!attribute [rw] access_token
173
+ # Scoped-down AWS credentials (15 minute duration) Present for both
174
+ # authorization code redemption and token refresh
175
+ # @return [Types::AccessToken]
176
+ #
177
+ # @!attribute [rw] token_type
178
+ # Token type indicating this is AWS SigV4 credentials Value is
179
+ # "aws\_sigv4" for both flows
180
+ # @return [String]
181
+ #
182
+ # @!attribute [rw] expires_in
183
+ # Time to expiry in seconds (maximum 900) Present for both
184
+ # authorization code redemption and token refresh
185
+ # @return [Integer]
186
+ #
187
+ # @!attribute [rw] refresh_token
188
+ # Encrypted refresh token with cnf.jkt (SHA-256 thumbprint of
189
+ # presented jwk) Always present in responses (required for both flows)
190
+ # @return [String]
191
+ #
192
+ # @!attribute [rw] id_token
193
+ # ID token containing user identity information Present only in
194
+ # authorization code redemption response
195
+ # (grant\_type=authorization\_code) Not included in token refresh
196
+ # responses
197
+ # @return [String]
198
+ #
199
+ # @see http://docs.aws.amazon.com/goto/WebAPI/signin-2023-01-01/CreateOAuth2TokenResponseBody AWS API Documentation
200
+ #
201
+ class CreateOAuth2TokenResponseBody < Struct.new(
202
+ :access_token,
203
+ :token_type,
204
+ :expires_in,
205
+ :refresh_token,
206
+ :id_token)
207
+ SENSITIVE = [:access_token, :refresh_token]
208
+ include Aws::Structure
209
+ end
210
+
211
+ # Error thrown when an internal server error occurs
212
+ #
213
+ # HTTP Status Code: 500 Internal Server Error
214
+ #
215
+ # Used for unexpected server-side errors that prevent request
216
+ # processing.
217
+ #
218
+ # @!attribute [rw] error
219
+ # OAuth 2.0 error code indicating server error Will be SERVER\_ERROR
220
+ # for internal server errors
221
+ # @return [String]
222
+ #
223
+ # @!attribute [rw] message
224
+ # Detailed message explaining the server error May include error
225
+ # details for debugging purposes
226
+ # @return [String]
227
+ #
228
+ # @see http://docs.aws.amazon.com/goto/WebAPI/signin-2023-01-01/InternalServerException AWS API Documentation
229
+ #
230
+ class InternalServerException < Struct.new(
231
+ :error,
232
+ :message)
233
+ SENSITIVE = []
234
+ include Aws::Structure
235
+ end
236
+
237
+ # Error thrown when rate limit is exceeded
238
+ #
239
+ # HTTP Status Code: 429 Too Many Requests
240
+ #
241
+ # Possible OAuth2ErrorCode values:
242
+ #
243
+ # * INVALID\_REQUEST: Rate limiting, too many requests, abuse prevention
244
+ #
245
+ # Possible causes:
246
+ #
247
+ # * Too many token requests from the same client
248
+ # * Rate limiting based on client\_id or IP address
249
+ # * Abuse prevention mechanisms triggered
250
+ # * Service protection against excessive token generation
251
+ #
252
+ # @!attribute [rw] error
253
+ # OAuth 2.0 error code indicating the specific type of error Will be
254
+ # INVALID\_REQUEST for rate limiting scenarios
255
+ # @return [String]
256
+ #
257
+ # @!attribute [rw] message
258
+ # Detailed message about the rate limiting May include retry-after
259
+ # information or rate limit details
260
+ # @return [String]
261
+ #
262
+ # @see http://docs.aws.amazon.com/goto/WebAPI/signin-2023-01-01/TooManyRequestsError AWS API Documentation
263
+ #
264
+ class TooManyRequestsError < Struct.new(
265
+ :error,
266
+ :message)
267
+ SENSITIVE = []
268
+ include Aws::Structure
269
+ end
270
+
271
+ # Error thrown when request validation fails
272
+ #
273
+ # HTTP Status Code: 400 Bad Request
274
+ #
275
+ # Used for request validation errors such as malformed parameters,
276
+ # missing required fields, or invalid parameter values.
277
+ #
278
+ # @!attribute [rw] error
279
+ # OAuth 2.0 error code indicating validation failure Will be
280
+ # INVALID\_REQUEST for validation errors
281
+ # @return [String]
282
+ #
283
+ # @!attribute [rw] message
284
+ # Detailed message explaining the validation failure Provides specific
285
+ # information about which validation failed
286
+ # @return [String]
287
+ #
288
+ # @see http://docs.aws.amazon.com/goto/WebAPI/signin-2023-01-01/ValidationException AWS API Documentation
289
+ #
290
+ class ValidationException < Struct.new(
291
+ :error,
292
+ :message)
293
+ SENSITIVE = []
294
+ include Aws::Structure
295
+ end
296
+
297
+ end
298
+ end
299
+
@@ -0,0 +1,63 @@
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
+ unless Module.const_defined?(:Aws)
12
+ require 'aws-sdk-core'
13
+ require 'aws-sigv4'
14
+ end
15
+
16
+ Aws::Plugins::GlobalConfiguration.add_identifier(:signin)
17
+
18
+ # This module provides support for AWS Sign-In Service. This module is available in the
19
+ # `aws-sdk-core` gem.
20
+ #
21
+ # # Client
22
+ #
23
+ # The {Client} class provides one method for each API operation. Operation
24
+ # methods each accept a hash of request parameters and return a response
25
+ # structure.
26
+ #
27
+ # signin = Aws::Signin::Client.new
28
+ # resp = signin.create_o_auth_2_token(params)
29
+ #
30
+ # See {Client} for more information.
31
+ #
32
+ # # Errors
33
+ #
34
+ # Errors returned from AWS Sign-In Service are defined in the
35
+ # {Errors} module and all extend {Errors::ServiceError}.
36
+ #
37
+ # begin
38
+ # # do stuff
39
+ # rescue Aws::Signin::Errors::ServiceError
40
+ # # rescues all AWS Sign-In Service API errors
41
+ # end
42
+ #
43
+ # See {Errors} for more information.
44
+ #
45
+ # @!group service
46
+ module Aws::Signin
47
+ autoload :Types, 'aws-sdk-signin/types'
48
+ autoload :ClientApi, 'aws-sdk-signin/client_api'
49
+ module Plugins
50
+ autoload :Endpoints, 'aws-sdk-signin/plugins/endpoints.rb'
51
+ end
52
+ autoload :Client, 'aws-sdk-signin/client'
53
+ autoload :Errors, 'aws-sdk-signin/errors'
54
+ autoload :Resource, 'aws-sdk-signin/resource'
55
+ autoload :EndpointParameters, 'aws-sdk-signin/endpoint_parameters'
56
+ autoload :EndpointProvider, 'aws-sdk-signin/endpoint_provider'
57
+ autoload :Endpoints, 'aws-sdk-signin/endpoints'
58
+
59
+ GEM_VERSION = '3.239.2'
60
+
61
+ end
62
+
63
+ require_relative 'aws-sdk-signin/customizations'
@@ -698,7 +698,7 @@ module Aws::SSO
698
698
  tracer: tracer
699
699
  )
700
700
  context[:gem_name] = 'aws-sdk-core'
701
- context[:gem_version] = '3.236.0'
701
+ context[:gem_version] = '3.239.2'
702
702
  Seahorse::Client::Request.new(handlers, context)
703
703
  end
704
704
 
data/lib/aws-sdk-sso.rb CHANGED
@@ -56,7 +56,7 @@ module Aws::SSO
56
56
  autoload :EndpointProvider, 'aws-sdk-sso/endpoint_provider'
57
57
  autoload :Endpoints, 'aws-sdk-sso/endpoints'
58
58
 
59
- GEM_VERSION = '3.236.0'
59
+ GEM_VERSION = '3.239.2'
60
60
 
61
61
  end
62
62
 
@@ -1081,7 +1081,7 @@ module Aws::SSOOIDC
1081
1081
  tracer: tracer
1082
1082
  )
1083
1083
  context[:gem_name] = 'aws-sdk-core'
1084
- context[:gem_version] = '3.236.0'
1084
+ context[:gem_version] = '3.239.2'
1085
1085
  Seahorse::Client::Request.new(handlers, context)
1086
1086
  end
1087
1087
 
@@ -56,7 +56,7 @@ module Aws::SSOOIDC
56
56
  autoload :EndpointProvider, 'aws-sdk-ssooidc/endpoint_provider'
57
57
  autoload :Endpoints, 'aws-sdk-ssooidc/endpoints'
58
58
 
59
- GEM_VERSION = '3.236.0'
59
+ GEM_VERSION = '3.239.2'
60
60
 
61
61
  end
62
62
 
@@ -619,7 +619,7 @@ module Aws::STS
619
619
  # The regex used to validate this parameter is a string of characters
620
620
  # consisting of upper- and lower-case alphanumeric characters with no
621
621
  # spaces. You can also include underscores or any of the following
622
- # characters: =,.@-
622
+ # characters: +=,.@-
623
623
  #
624
624
  #
625
625
  #
@@ -813,7 +813,7 @@ module Aws::STS
813
813
  # The regex used to validate this parameter is a string of characters
814
814
  # consisting of upper- and lower-case alphanumeric characters with no
815
815
  # spaces. You can also include underscores or any of the following
816
- # characters: =,.@:/-
816
+ # characters: +=,.@:\\/-
817
817
  #
818
818
  #
819
819
  #
@@ -831,7 +831,7 @@ module Aws::STS
831
831
  # The regex used to validate this parameter is a string of characters
832
832
  # consisting of upper- and lower-case alphanumeric characters with no
833
833
  # spaces. You can also include underscores or any of the following
834
- # characters: =,.@-
834
+ # characters: +=/:,.@-
835
835
  #
836
836
  # @option params [String] :token_code
837
837
  # The value provided by the MFA device, if the trust policy of the role
@@ -892,7 +892,7 @@ module Aws::STS
892
892
  #
893
893
  # resp = client.assume_role({
894
894
  # external_id: "123ABC",
895
- # policy: "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Sid\":\"Stmt1\",\"Effect\":\"Allow\",\"Action\":\"s3:ListAllMyBuckets\",\"Resource\":\"*\"}]}",
895
+ # policy: "escaped-JSON-IAM-POLICY",
896
896
  # role_arn: "arn:aws:iam::123456789012:role/demo",
897
897
  # role_session_name: "testAssumeRoleSession",
898
898
  # tags: [
@@ -996,6 +996,11 @@ module Aws::STS
996
996
  # Applications can use these temporary security credentials to sign
997
997
  # calls to Amazon Web Services services.
998
998
  #
999
+ # <note markdown="1"> AssumeRoleWithSAML will not work on IAM Identity Center managed roles.
1000
+ # These roles' names start with `AWSReservedSSO_`.
1001
+ #
1002
+ # </note>
1003
+ #
999
1004
  # **Session Duration**
1000
1005
  #
1001
1006
  # By default, the temporary security credentials created by
@@ -1414,7 +1419,8 @@ module Aws::STS
1414
1419
  # (Optional) You can configure your IdP to pass attributes into your web
1415
1420
  # identity token as session tags. Each session tag consists of a key
1416
1421
  # name and an associated value. For more information about session tags,
1417
- # see [Passing Session Tags in STS][9] in the *IAM User Guide*.
1422
+ # see [Passing session tags using AssumeRoleWithWebIdentity][9] in the
1423
+ # *IAM User Guide*.
1418
1424
  #
1419
1425
  # You can pass up to 50 session tags. The plaintext session tag keys
1420
1426
  # can’t exceed 128 characters and the values can’t exceed 256
@@ -1482,7 +1488,7 @@ module Aws::STS
1482
1488
  # [6]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_update-role-settings.html#id_roles_update-session-duration
1483
1489
  # [7]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use.html
1484
1490
  # [8]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#policies_session
1485
- # [9]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html
1491
+ # [9]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html#id_session-tags_adding-assume-role-idp
1486
1492
  # [10]: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_iam-limits.html#reference_iam-limits-entity-length
1487
1493
  # [11]: https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_attribute-based-access-control.html
1488
1494
  # [12]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html#id_session-tags_role-chaining
@@ -1673,7 +1679,7 @@ module Aws::STS
1673
1679
  #
1674
1680
  # resp = client.assume_role_with_web_identity({
1675
1681
  # duration_seconds: 3600,
1676
- # policy: "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Sid\":\"Stmt1\",\"Effect\":\"Allow\",\"Action\":\"s3:ListAllMyBuckets\",\"Resource\":\"*\"}]}",
1682
+ # policy: "escaped-JSON-IAM-POLICY",
1677
1683
  # provider_id: "www.amazon.com",
1678
1684
  # role_arn: "arn:aws:iam::123456789012:role/FederatedWebIdentityRole",
1679
1685
  # role_session_name: "app1",
@@ -1738,7 +1744,10 @@ module Aws::STS
1738
1744
  end
1739
1745
 
1740
1746
  # Returns a set of short term credentials you can use to perform
1741
- # privileged tasks on a member account in your organization.
1747
+ # privileged tasks on a member account in your organization. You must
1748
+ # use credentials from an Organizations management account or a
1749
+ # delegated administrator account for IAM to call `AssumeRoot`. You
1750
+ # cannot use root user credentials to make this call.
1742
1751
  #
1743
1752
  # Before you can launch a privileged session, you must have centralized
1744
1753
  # root access in your organization. For steps to enable this feature,
@@ -1755,19 +1764,29 @@ module Aws::STS
1755
1764
  # were performed in a session. For more information, see [Track
1756
1765
  # privileged tasks in CloudTrail][3] in the *IAM User Guide*.
1757
1766
  #
1767
+ # When granting access to privileged tasks you should only grant the
1768
+ # necessary permissions required to perform that task. For more
1769
+ # information, see [Security best practices in IAM][4]. In addition, you
1770
+ # can use [service control policies][5] (SCPs) to manage and limit
1771
+ # permissions in your organization. See [General examples][6] in the
1772
+ # *Organizations User Guide* for more information on SCPs.
1773
+ #
1758
1774
  #
1759
1775
  #
1760
1776
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-enable-root-access.html
1761
1777
  # [2]: https://docs.aws.amazon.com/STS/latest/APIReference/welcome.html#sts-endpoints
1762
1778
  # [3]: https://docs.aws.amazon.com/IAM/latest/UserGuide/cloudtrail-track-privileged-tasks.html
1779
+ # [4]: https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html
1780
+ # [5]: https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html
1781
+ # [6]: https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps_examples_general.html
1763
1782
  #
1764
1783
  # @option params [required, String] :target_principal
1765
1784
  # The member account principal ARN or account ID.
1766
1785
  #
1767
1786
  # @option params [required, Types::PolicyDescriptorType] :task_policy_arn
1768
1787
  # The identity based policy that scopes the session to the privileged
1769
- # tasks that can be performed. You can use one of following Amazon Web
1770
- # Services managed policies to scope root session actions.
1788
+ # tasks that can be performed. You must use one of following Amazon Web
1789
+ # Services managed policies to scope root session actions:
1771
1790
  #
1772
1791
  # * [IAMAuditRootUserCredentials][1]
1773
1792
  #
@@ -2078,6 +2097,46 @@ module Aws::STS
2078
2097
  req.send_request(options)
2079
2098
  end
2080
2099
 
2100
+ # Exchanges a trade-in token for temporary Amazon Web Services
2101
+ # credentials with the permissions associated with the assumed
2102
+ # principal. This operation allows you to obtain credentials for a
2103
+ # specific principal based on a trade-in token, enabling delegation of
2104
+ # access to Amazon Web Services resources.
2105
+ #
2106
+ # @option params [required, String] :trade_in_token
2107
+ # The token to exchange for temporary Amazon Web Services credentials.
2108
+ # This token must be valid and unexpired at the time of the request.
2109
+ #
2110
+ # @return [Types::GetDelegatedAccessTokenResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2111
+ #
2112
+ # * {Types::GetDelegatedAccessTokenResponse#credentials #credentials} => Types::Credentials
2113
+ # * {Types::GetDelegatedAccessTokenResponse#packed_policy_size #packed_policy_size} => Integer
2114
+ # * {Types::GetDelegatedAccessTokenResponse#assumed_principal #assumed_principal} => String
2115
+ #
2116
+ # @example Request syntax with placeholder values
2117
+ #
2118
+ # resp = client.get_delegated_access_token({
2119
+ # trade_in_token: "tradeInTokenType", # required
2120
+ # })
2121
+ #
2122
+ # @example Response structure
2123
+ #
2124
+ # resp.credentials.access_key_id #=> String
2125
+ # resp.credentials.secret_access_key #=> String
2126
+ # resp.credentials.session_token #=> String
2127
+ # resp.credentials.expiration #=> Time
2128
+ # resp.packed_policy_size #=> Integer
2129
+ # resp.assumed_principal #=> String
2130
+ #
2131
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15/GetDelegatedAccessToken AWS API Documentation
2132
+ #
2133
+ # @overload get_delegated_access_token(params = {})
2134
+ # @param [Hash] params ({})
2135
+ def get_delegated_access_token(params = {}, options = {})
2136
+ req = build_request(:get_delegated_access_token, params)
2137
+ req.send_request(options)
2138
+ end
2139
+
2081
2140
  # Returns a set of temporary security credentials (consisting of an
2082
2141
  # access key ID, a secret access key, and a security token) for a user.
2083
2142
  # A typical use is in a proxy application that gets temporary security
@@ -2360,7 +2419,7 @@ module Aws::STS
2360
2419
  # resp = client.get_federation_token({
2361
2420
  # duration_seconds: 3600,
2362
2421
  # name: "testFedUserSession",
2363
- # policy: "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Sid\":\"Stmt1\",\"Effect\":\"Allow\",\"Action\":\"s3:ListAllMyBuckets\",\"Resource\":\"*\"}]}",
2422
+ # policy: "escaped-JSON-IAM-POLICY",
2364
2423
  # tags: [
2365
2424
  # {
2366
2425
  # key: "Project",
@@ -2583,6 +2642,71 @@ module Aws::STS
2583
2642
  req.send_request(options)
2584
2643
  end
2585
2644
 
2645
+ # Returns a signed JSON Web Token (JWT) that represents the calling
2646
+ # Amazon Web Services identity. The returned JWT can be used to
2647
+ # authenticate with external services that support OIDC discovery. The
2648
+ # token is signed by Amazon Web Services STS and can be publicly
2649
+ # verified using the verification keys published at the issuer's JWKS
2650
+ # endpoint.
2651
+ #
2652
+ # @option params [required, Array<String>] :audience
2653
+ # The intended recipient of the web identity token. This value populates
2654
+ # the `aud` claim in the JWT and should identify the service or
2655
+ # application that will validate and use the token. The external service
2656
+ # should verify this claim to ensure the token was intended for their
2657
+ # use.
2658
+ #
2659
+ # @option params [Integer] :duration_seconds
2660
+ # The duration, in seconds, for which the JSON Web Token (JWT) will
2661
+ # remain valid. The value can range from 60 seconds (1 minute) to 3600
2662
+ # seconds (1 hour). If not specified, the default duration is 300
2663
+ # seconds (5 minutes). The token is designed to be short-lived and
2664
+ # should be used for proof of identity, then exchanged for credentials
2665
+ # or short-lived tokens in the external service.
2666
+ #
2667
+ # @option params [required, String] :signing_algorithm
2668
+ # The cryptographic algorithm to use for signing the JSON Web Token
2669
+ # (JWT). Valid values are RS256 (RSA with SHA-256) and ES384 (ECDSA
2670
+ # using P-384 curve with SHA-384).
2671
+ #
2672
+ # @option params [Array<Types::Tag>] :tags
2673
+ # An optional list of tags to include in the JSON Web Token (JWT). These
2674
+ # tags are added as custom claims to the JWT and can be used by the
2675
+ # downstream service for authorization decisions.
2676
+ #
2677
+ # @return [Types::GetWebIdentityTokenResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2678
+ #
2679
+ # * {Types::GetWebIdentityTokenResponse#web_identity_token #web_identity_token} => String
2680
+ # * {Types::GetWebIdentityTokenResponse#expiration #expiration} => Time
2681
+ #
2682
+ # @example Request syntax with placeholder values
2683
+ #
2684
+ # resp = client.get_web_identity_token({
2685
+ # audience: ["webIdentityTokenAudienceStringType"], # required
2686
+ # duration_seconds: 1,
2687
+ # signing_algorithm: "jwtAlgorithmType", # required
2688
+ # tags: [
2689
+ # {
2690
+ # key: "tagKeyType", # required
2691
+ # value: "tagValueType", # required
2692
+ # },
2693
+ # ],
2694
+ # })
2695
+ #
2696
+ # @example Response structure
2697
+ #
2698
+ # resp.web_identity_token #=> String
2699
+ # resp.expiration #=> Time
2700
+ #
2701
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15/GetWebIdentityToken AWS API Documentation
2702
+ #
2703
+ # @overload get_web_identity_token(params = {})
2704
+ # @param [Hash] params ({})
2705
+ def get_web_identity_token(params = {}, options = {})
2706
+ req = build_request(:get_web_identity_token, params)
2707
+ req.send_request(options)
2708
+ end
2709
+
2586
2710
  # @!endgroup
2587
2711
 
2588
2712
  # @param params ({})
@@ -2601,7 +2725,7 @@ module Aws::STS
2601
2725
  tracer: tracer
2602
2726
  )
2603
2727
  context[:gem_name] = 'aws-sdk-core'
2604
- context[:gem_version] = '3.236.0'
2728
+ context[:gem_version] = '3.239.2'
2605
2729
  Seahorse::Client::Request.new(handlers, context)
2606
2730
  end
2607
2731