aws-sdk-core 3.205.0 → 3.209.1

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.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +48 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-defaults.rb +4 -1
  5. data/lib/aws-sdk-core/assume_role_credentials.rb +12 -5
  6. data/lib/aws-sdk-core/assume_role_web_identity_credentials.rb +13 -7
  7. data/lib/aws-sdk-core/client_side_monitoring.rb +9 -0
  8. data/lib/aws-sdk-core/credential_provider_chain.rb +9 -2
  9. data/lib/aws-sdk-core/credentials.rb +13 -6
  10. data/lib/aws-sdk-core/endpoints/endpoint.rb +3 -1
  11. data/lib/aws-sdk-core/endpoints.rb +6 -3
  12. data/lib/aws-sdk-core/log.rb +10 -0
  13. data/lib/aws-sdk-core/plugins/credentials_configuration.rb +7 -3
  14. data/lib/aws-sdk-core/plugins/user_agent.rb +6 -1
  15. data/lib/aws-sdk-core/plugins.rb +39 -0
  16. data/lib/aws-sdk-core/process_credentials.rb +2 -1
  17. data/lib/aws-sdk-core/resources.rb +8 -0
  18. data/lib/aws-sdk-core/shared_config.rb +3 -1
  19. data/lib/aws-sdk-core/shared_credentials.rb +0 -7
  20. data/lib/aws-sdk-core/sso_credentials.rb +2 -1
  21. data/lib/aws-sdk-core/stubbing.rb +22 -0
  22. data/lib/aws-sdk-core.rb +82 -102
  23. data/lib/aws-sdk-sso/client.rb +11 -7
  24. data/lib/aws-sdk-sso/client_api.rb +1 -0
  25. data/lib/aws-sdk-sso/plugins/endpoints.rb +8 -5
  26. data/lib/aws-sdk-sso/types.rb +1 -0
  27. data/lib/aws-sdk-sso.rb +15 -11
  28. data/lib/aws-sdk-ssooidc/client.rb +11 -7
  29. data/lib/aws-sdk-ssooidc/client_api.rb +1 -0
  30. data/lib/aws-sdk-ssooidc/plugins/endpoints.rb +8 -5
  31. data/lib/aws-sdk-ssooidc/types.rb +1 -0
  32. data/lib/aws-sdk-ssooidc.rb +15 -11
  33. data/lib/aws-sdk-sts/client.rb +11 -7
  34. data/lib/aws-sdk-sts/client_api.rb +1 -0
  35. data/lib/aws-sdk-sts/customizations.rb +5 -1
  36. data/lib/aws-sdk-sts/plugins/endpoints.rb +8 -5
  37. data/lib/aws-sdk-sts/types.rb +1 -0
  38. data/lib/aws-sdk-sts.rb +15 -11
  39. metadata +7 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2d3b4f9e7c9f140f0b216c6906c6b23135826ca87fdc8fc8a1a427b5b655f8f0
4
- data.tar.gz: 47e453550bd7e0131a1b0f8f1a3d08b442546cca675c43685c9bac6550d1cc45
3
+ metadata.gz: b21a55766ac3b065464e202f9e5e8eaa449fb1b186776cc439f9ef6859c51923
4
+ data.tar.gz: d0602af7e12f340646722e0ca65ebbe1b9950d8b7ac7da1da2bfaf22a6723fbb
5
5
  SHA512:
6
- metadata.gz: 0a1138a6ef760e057c942ea81263c6db0af07b267715bd6467bdfaabed5ec01c45dc4b4297c4db397ae2dca534c6af55e4aec8b9c158b395d99a22c0b50fe205
7
- data.tar.gz: 5366ddf0b85dd20f0a177a7b5c44ebc3d6d2eabc898f6d5934a75795bee36dc1e5c4eb677781ba77e39807c2cea412deff17ba732e038810bc2e640f963157e8
6
+ metadata.gz: dce3b13eced2c29beecdbc6929836c9917cc0d7524033cb76e0ea7ae6cf6f01c87b9f0f07a88a17197cb2989c4addf3a9c303acbdb6cf5fb331ecb328d16feec
7
+ data.tar.gz: ace0cb1e6d8e05083601c36607a3c8d6902a72a36cec481081939626ce8399fa43b603b42d6fb026cddce1ec51ab98f405a02e6fa4eb861aabe23aa658519457
data/CHANGELOG.md CHANGED
@@ -1,6 +1,53 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 3.209.1 (2024-09-25)
5
+ ------------------
6
+
7
+ * Issue - Add all core plugins to autoloads.
8
+
9
+ 3.209.0 (2024-09-24)
10
+ ------------------
11
+
12
+ * Feature - Updated Aws::STS::Client with the latest API changes.
13
+
14
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
15
+
16
+ * Feature - Updated Aws::SSO::Client with the latest API changes.
17
+
18
+ * Issue - Add service identifiers to GlobalConfig's list of identifiers outside of autoload (#3113).
19
+
20
+ * Issue - Ignore invalid ARNs when trying to parse accountId in assume role credentials.
21
+
22
+ 3.208.0 (2024-09-23)
23
+ ------------------
24
+
25
+ * Feature - Updated Aws::STS::Client with the latest API changes.
26
+
27
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
28
+
29
+ * Feature - Updated Aws::SSO::Client with the latest API changes.
30
+
31
+ * Feature - Use autoloading at the service level to load service clients and resources.
32
+
33
+ 3.207.0 (2024-09-20)
34
+ ------------------
35
+
36
+ * Feature - Updated Aws::STS::Client with the latest API changes.
37
+
38
+ * Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
39
+
40
+ * Feature - Updated Aws::SSO::Client with the latest API changes.
41
+
42
+ * Feature - Support Account ID credentials using `ENV['AWS_ACCOUNT_ID']`, `aws_account_id` shared config, or the `account_id` Client configuration option.
43
+
44
+ * Feature - Support Account ID endpoint mode using `ENV['AWS_ACCOUNT_ID_ENDPOINT_MODE']`, `aws_account_id_endpoint_mode` shared config, or the `account_id_endpoint_mode` Client configuration option. Defaults to `preferred`, which will use the account id endpoint if available. Set to `disabled` to disable account id endpoints. Set to `required` to require account id endpoint usage; an error is raised if credentials do not have an account id.
45
+
46
+ 3.206.0 (2024-09-17)
47
+ ------------------
48
+
49
+ * Feature - Support `sigv4a` endpoint auth without CRT.
50
+
4
51
  3.205.0 (2024-09-11)
5
52
  ------------------
6
53
 
@@ -59,6 +106,7 @@ Unreleased Changes
59
106
  ------------------
60
107
 
61
108
  * Issue - Allow legacy/undocumented `sigv4_signer` configuration to override resolved signer.
109
+
62
110
  * Issue - Consider sigv4a supported without crt check.
63
111
 
64
112
  3.201.4 (2024-08-08)
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.205.0
1
+ 3.209.1
data/lib/aws-defaults.rb CHANGED
@@ -1,3 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require_relative 'aws-defaults/default_configuration'
3
+ module Aws
4
+ autoload :DefaultsModeConfiguration, 'aws-defaults/default_configuration'
5
+ autoload :DefaultsModeConfigResolver, 'aws-defaults/defaults_mode_config_resolver'
6
+ end
@@ -62,13 +62,20 @@ module Aws
62
62
  private
63
63
 
64
64
  def refresh
65
- c = @client.assume_role(@assume_role_params).credentials
65
+ resp = @client.assume_role(@assume_role_params)
66
+ creds = resp.credentials
66
67
  @credentials = Credentials.new(
67
- c.access_key_id,
68
- c.secret_access_key,
69
- c.session_token
68
+ creds.access_key_id,
69
+ creds.secret_access_key,
70
+ creds.session_token,
71
+ account_id: parse_account_id(resp)
70
72
  )
71
- @expiration = c.expiration
73
+ @expiration = creds.expiration
74
+ end
75
+
76
+ def parse_account_id(resp)
77
+ arn = resp.assumed_role_user&.arn
78
+ ARNParser.parse(arn).account_id if ARNParser.arn?(arn)
72
79
  end
73
80
 
74
81
  class << self
@@ -60,7 +60,7 @@ module Aws
60
60
  # not provided, generate encoded UUID as session name
61
61
  @assume_role_web_identity_params[:role_session_name] = _session_name
62
62
  end
63
- @client = client_opts[:client] || STS::Client.new(client_opts.merge(credentials: false))
63
+ @client = client_opts[:client] || STS::Client.new(client_opts.merge(credentials: nil))
64
64
  super
65
65
  end
66
66
 
@@ -73,14 +73,15 @@ module Aws
73
73
  # read from token file everytime it refreshes
74
74
  @assume_role_web_identity_params[:web_identity_token] = _token_from_file(@token_file)
75
75
 
76
- c = @client.assume_role_with_web_identity(
77
- @assume_role_web_identity_params).credentials
76
+ resp = @client.assume_role_with_web_identity(@assume_role_web_identity_params)
77
+ creds = resp.credentials
78
78
  @credentials = Credentials.new(
79
- c.access_key_id,
80
- c.secret_access_key,
81
- c.session_token
79
+ creds.access_key_id,
80
+ creds.secret_access_key,
81
+ creds.session_token,
82
+ account_id: parse_account_id(resp)
82
83
  )
83
- @expiration = c.expiration
84
+ @expiration = creds.expiration
84
85
  end
85
86
 
86
87
  def _token_from_file(path)
@@ -94,6 +95,11 @@ module Aws
94
95
  Base64.strict_encode64(SecureRandom.uuid)
95
96
  end
96
97
 
98
+ def parse_account_id(resp)
99
+ arn = resp.assumed_role_user&.arn
100
+ ARNParser.parse(arn).account_id if ARNParser.arn?(arn)
101
+ end
102
+
97
103
  class << self
98
104
 
99
105
  # @api private
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Aws
4
+ # setup autoloading for ClientSideMonitoring module
5
+ module ClientSideMonitoring
6
+ autoload :RequestMetrics, 'aws-sdk-core/client_side_monitoring/request_metrics'
7
+ autoload :Publisher, 'aws-sdk-core/client_side_monitoring/publisher'
8
+ end
9
+ end
@@ -45,7 +45,8 @@ module Aws
45
45
  Credentials.new(
46
46
  options[:config].access_key_id,
47
47
  options[:config].secret_access_key,
48
- options[:config].session_token
48
+ options[:config].session_token,
49
+ account_id: options[:config].account_id
49
50
  )
50
51
  end
51
52
  end
@@ -94,7 +95,13 @@ module Aws
94
95
  key = %w[AWS_ACCESS_KEY_ID AMAZON_ACCESS_KEY_ID AWS_ACCESS_KEY]
95
96
  secret = %w[AWS_SECRET_ACCESS_KEY AMAZON_SECRET_ACCESS_KEY AWS_SECRET_KEY]
96
97
  token = %w[AWS_SESSION_TOKEN AMAZON_SESSION_TOKEN]
97
- Credentials.new(envar(key), envar(secret), envar(token))
98
+ account_id = %w[AWS_ACCOUNT_ID]
99
+ Credentials.new(
100
+ envar(key),
101
+ envar(secret),
102
+ envar(token),
103
+ account_id: envar(account_id)
104
+ )
98
105
  end
99
106
 
100
107
  def envar(keys)
@@ -6,21 +6,28 @@ module Aws
6
6
  # @param [String] access_key_id
7
7
  # @param [String] secret_access_key
8
8
  # @param [String] session_token (nil)
9
- def initialize(access_key_id, secret_access_key, session_token = nil)
9
+ # @param [Hash] kwargs
10
+ # @option kwargs [String] :credential_scope (nil)
11
+ def initialize(access_key_id, secret_access_key, session_token = nil,
12
+ **kwargs)
10
13
  @access_key_id = access_key_id
11
14
  @secret_access_key = secret_access_key
12
15
  @session_token = session_token
16
+ @account_id = kwargs[:account_id]
13
17
  end
14
18
 
15
- # @return [String, nil]
19
+ # @return [String]
16
20
  attr_reader :access_key_id
17
21
 
18
- # @return [String, nil]
22
+ # @return [String]
19
23
  attr_reader :secret_access_key
20
24
 
21
25
  # @return [String, nil]
22
26
  attr_reader :session_token
23
27
 
28
+ # @return [String, nil]
29
+ attr_reader :account_id
30
+
24
31
  # @return [Credentials]
25
32
  def credentials
26
33
  self
@@ -30,9 +37,9 @@ module Aws
30
37
  # access key are both set.
31
38
  def set?
32
39
  !access_key_id.nil? &&
33
- !access_key_id.empty? &&
34
- !secret_access_key.nil? &&
35
- !secret_access_key.empty?
40
+ !access_key_id.empty? &&
41
+ !secret_access_key.nil? &&
42
+ !secret_access_key.empty?
36
43
  end
37
44
 
38
45
  # Removing the secret access key from the default inspect string.
@@ -3,15 +3,17 @@
3
3
  module Aws
4
4
  module Endpoints
5
5
  class Endpoint
6
- def initialize(url:, properties: {}, headers: {})
6
+ def initialize(url:, properties: {}, headers: {}, metadata: {})
7
7
  @url = url
8
8
  @properties = properties
9
9
  @headers = headers
10
+ @metadata = metadata
10
11
  end
11
12
 
12
13
  attr_reader :url
13
14
  attr_reader :properties
14
15
  attr_reader :headers
16
+ attr_reader :metadata
15
17
  end
16
18
  end
17
19
  end
@@ -19,9 +19,12 @@ require 'aws-sigv4'
19
19
  module Aws
20
20
  # @api private
21
21
  module Endpoints
22
- supported_auth_traits = %w[aws.auth#sigv4 smithy.api#httpBearerAuth smithy.api#noAuth]
23
- supported_auth_traits += ['aws.auth#sigv4a'] if Aws::Sigv4::Signer.use_crt?
24
- SUPPORTED_AUTH_TRAITS = supported_auth_traits.freeze
22
+ SUPPORTED_AUTH_TRAITS = %w[
23
+ aws.auth#sigv4
24
+ aws.auth#sigv4a
25
+ smithy.api#httpBearerAuth
26
+ smithy.api#noAuth
27
+ ].freeze
25
28
 
26
29
  class << self
27
30
  def resolve_auth_scheme(context, endpoint)
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Aws
4
+ # setup autoloading for Log module
5
+ module Log
6
+ autoload :Formatter, 'aws-sdk-core/log/formatter'
7
+ autoload :ParamFilter, 'aws-sdk-core/log/param_filter'
8
+ autoload :ParamFormatter, 'aws-sdk-core/log/param_formatter'
9
+ end
10
+ end
@@ -12,6 +12,8 @@ module Aws
12
12
 
13
13
  option(:session_token, doc_type: String, docstring: '')
14
14
 
15
+ option(:account_id, doc_type: String, docstring: '')
16
+
15
17
  option(:profile,
16
18
  doc_default: 'default',
17
19
  doc_type: String,
@@ -58,13 +60,15 @@ When `:credentials` are not configured directly, the following
58
60
  locations will be searched for credentials:
59
61
 
60
62
  * `Aws.config[:credentials]`
61
- * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
62
- * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
63
+ * The `:access_key_id`, `:secret_access_key`, `:session_token`, and
64
+ `:account_id` options.
65
+ * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'],
66
+ ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID']
63
67
  * `~/.aws/credentials`
64
68
  * `~/.aws/config`
65
69
  * EC2/ECS IMDS instance profile - When used by default, the timeouts
66
70
  are very aggressive. Construct and pass an instance of
67
- `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
71
+ `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
68
72
  enable retries and extended timeouts. Instance profile credential
69
73
  fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
70
74
  to true.
@@ -20,7 +20,12 @@ module Aws
20
20
  "GZIP_REQUEST_COMPRESSION": "L",
21
21
  "PROTOCOL_RPC_V2_CBOR": "M",
22
22
  "ENDPOINT_OVERRIDE": "N",
23
- "SIGV4A_SIGNING": "S"
23
+ "ACCOUNT_ID_ENDPOINT": "O",
24
+ "ACCOUNT_ID_MODE_PREFERRED": "P",
25
+ "ACCOUNT_ID_MODE_DISABLED": "Q",
26
+ "ACCOUNT_ID_MODE_REQUIRED": "R",
27
+ "SIGV4A_SIGNING": "S",
28
+ "RESOLVED_ACCOUNT_ID": "T"
24
29
  }
25
30
  METRICS
26
31
 
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Aws
4
+ # setup autoloading for Plugins
5
+ # Most plugins are required explicitly from service clients
6
+ # but users may reference them outside of client usage.
7
+ module Plugins
8
+ autoload :ApiKey, 'aws-sdk-core/plugins/api_key'
9
+ autoload :BearerAuthorization, 'aws-sdk-core/plugins/bearer_authorization'
10
+ autoload :ChecksumAlgorithm, 'aws-sdk-core/plugins/checksum_algorithm'
11
+ autoload :ClientMetricsPlugin, 'aws-sdk-core/plugins/client_metrics_plugin'
12
+ autoload :ClientMetricsSendPlugin, 'aws-sdk-core/plugins/client_metrics_send_plugin'
13
+ autoload :CredentialsConfiguration, 'aws-sdk-core/plugins/credentials_configuration'
14
+ autoload :DefaultsMode, 'aws-sdk-core/plugins/defaults_mode'
15
+ autoload :EndpointDiscovery, 'aws-sdk-core/plugins/endpoint_discovery'
16
+ autoload :EndpointPattern, 'aws-sdk-core/plugins/endpoint_pattern'
17
+ autoload :EventStreamConfiguration, 'aws-sdk-core/plugins/event_stream_configuration'
18
+ autoload :GlobalConfiguration, 'aws-sdk-core/plugins/global_configuration'
19
+ autoload :HelpfulSocketErrors, 'aws-sdk-core/plugins/helpful_socket_errors'
20
+ autoload :HttpChecksum, 'aws-sdk-core/plugins/http_checksum'
21
+ autoload :IdempotencyToken, 'aws-sdk-core/plugins/idempotency_token'
22
+ autoload :InvocationId, 'aws-sdk-core/plugins/invocation_id'
23
+ autoload :JsonvalueConverter, 'aws-sdk-core/plugins/jsonvalue_converter'
24
+ autoload :Logging, 'aws-sdk-core/plugins/logging'
25
+ autoload :ParamConverter, 'aws-sdk-core/plugins/param_converter'
26
+ autoload :ParamValidator, 'aws-sdk-core/plugins/param_validator'
27
+ autoload :RecursionDetection, 'aws-sdk-core/plugins/recursion_detection'
28
+ autoload :RegionalEndpoint, 'aws-sdk-core/plugins/regional_endpoint'
29
+ autoload :RequestCompression, 'aws-sdk-core/plugins/request_compression'
30
+ autoload :ResponsePaging, 'aws-sdk-core/plugins/response_paging'
31
+ autoload :RetryErrors, 'aws-sdk-core/plugins/retry_errors'
32
+ autoload :Sign, 'aws-sdk-core/plugins/sign'
33
+ autoload :SignatureV4, 'aws-sdk-core/plugins/signature_v4'
34
+ autoload :StubResponses, 'aws-sdk-core/plugins/stub_responses'
35
+ autoload :Telemetry, 'aws-sdk-core/plugins/telemetry'
36
+ autoload :TransferEncoding, 'aws-sdk-core/plugins/transfer_encoding'
37
+ autoload :UserAgent, 'aws-sdk-core/plugins/user_agent'
38
+ end
39
+ end
@@ -74,7 +74,8 @@ module Aws
74
74
  creds = Credentials.new(
75
75
  creds_json['AccessKeyId'],
76
76
  creds_json['SecretAccessKey'],
77
- creds_json['SessionToken']
77
+ creds_json['SessionToken'],
78
+ account_id: creds_json['AccountId']
78
79
  )
79
80
 
80
81
  @expiration = creds_json['Expiration'] ? Time.iso8601(creds_json['Expiration']) : nil
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Aws
4
+ # setup autoloading for Resources module
5
+ module Resources
6
+ autoload :Collection, 'aws-sdk-core/resources/collection'
7
+ end
8
+ end
@@ -198,6 +198,7 @@ module Aws
198
198
 
199
199
  config_reader(
200
200
  :region,
201
+ :account_id_endpoint_mode,
201
202
  :sigv4a_signing_region_set,
202
203
  :ca_bundle,
203
204
  :credential_process,
@@ -414,7 +415,8 @@ module Aws
414
415
  creds = Credentials.new(
415
416
  prof_config['aws_access_key_id'],
416
417
  prof_config['aws_secret_access_key'],
417
- prof_config['aws_session_token']
418
+ prof_config['aws_session_token'],
419
+ account_id: prof_config['aws_account_id']
418
420
  )
419
421
  creds if creds.set?
420
422
  end
@@ -7,13 +7,6 @@ module Aws
7
7
 
8
8
  include CredentialProvider
9
9
 
10
- # @api private
11
- KEY_MAP = {
12
- 'aws_access_key_id' => 'access_key_id',
13
- 'aws_secret_access_key' => 'secret_access_key',
14
- 'aws_session_token' => 'session_token',
15
- }
16
-
17
10
  # Constructs a new SharedCredentials object. This will load static
18
11
  # (access_key_id, secret_access_key and session_token) AWS access
19
12
  # credentials from an ini file, which supports profiles. The default
@@ -156,7 +156,8 @@ module Aws
156
156
  @credentials = Credentials.new(
157
157
  c.access_key_id,
158
158
  c.secret_access_key,
159
- c.session_token
159
+ c.session_token,
160
+ account_id: @sso_account_id
160
161
  )
161
162
  @expiration = Time.at(c.expiration / 1000.0)
162
163
  end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Aws
4
+ # setup autoloading for Stubbing module
5
+ module Stubbing
6
+ autoload :EmptyStub, 'aws-sdk-core/stubbing/empty_stub'
7
+ autoload :DataApplicator, 'aws-sdk-core/stubbing/data_applicator'
8
+ autoload :StubData, 'aws-sdk-core/stubbing/stub_data'
9
+ autoload :XmlError, 'aws-sdk-core/stubbing/xml_error'
10
+
11
+ module Protocols
12
+ autoload :Json, 'aws-sdk-core/stubbing/protocols/json'
13
+ autoload :Rest, 'aws-sdk-core/stubbing/protocols/rest'
14
+ autoload :RestJson, 'aws-sdk-core/stubbing/protocols/rest_json'
15
+ autoload :RestXml, 'aws-sdk-core/stubbing/protocols/rest_xml'
16
+ autoload :Query, 'aws-sdk-core/stubbing/protocols/query'
17
+ autoload :EC2, 'aws-sdk-core/stubbing/protocols/ec2'
18
+ autoload :RpcV2, 'aws-sdk-core/stubbing/protocols/rpc_v2'
19
+ autoload :ApiGateway, 'aws-sdk-core/stubbing/protocols/api_gateway'
20
+ end
21
+ end
22
+ end
data/lib/aws-sdk-core.rb CHANGED
@@ -3,115 +3,80 @@
3
3
  require 'aws-partitions'
4
4
  require 'seahorse'
5
5
  require 'jmespath'
6
+ require 'aws-sigv4'
6
7
 
7
8
  require_relative 'aws-sdk-core/deprecations'
8
-
9
- # credential providers
10
- require_relative 'aws-sdk-core/credential_provider'
11
- require_relative 'aws-sdk-core/refreshing_credentials'
12
- require_relative 'aws-sdk-core/assume_role_credentials'
13
- require_relative 'aws-sdk-core/assume_role_web_identity_credentials'
14
- require_relative 'aws-sdk-core/credentials'
15
- require_relative 'aws-sdk-core/credential_provider_chain'
16
- require_relative 'aws-sdk-core/ecs_credentials'
17
- require_relative 'aws-sdk-core/instance_profile_credentials'
18
- require_relative 'aws-sdk-core/shared_credentials'
19
- require_relative 'aws-sdk-core/process_credentials'
20
- require_relative 'aws-sdk-core/sso_credentials'
21
-
22
- # tokens and token providers
23
- require_relative 'aws-sdk-core/token'
24
- require_relative 'aws-sdk-core/token_provider'
25
- require_relative 'aws-sdk-core/static_token_provider'
26
- require_relative 'aws-sdk-core/refreshing_token'
27
- require_relative 'aws-sdk-core/sso_token_provider'
28
- require_relative 'aws-sdk-core/token_provider_chain'
29
- require_relative 'aws-sdk-core/plugins/bearer_authorization'
30
-
31
- # client modules
32
- require_relative 'aws-sdk-core/client_stubs'
33
- require_relative 'aws-sdk-core/async_client_stubs'
34
- require_relative 'aws-sdk-core/eager_loader'
35
- require_relative 'aws-sdk-core/errors'
36
- require_relative 'aws-sdk-core/pageable_response'
37
- require_relative 'aws-sdk-core/pager'
38
- require_relative 'aws-sdk-core/param_converter'
39
- require_relative 'aws-sdk-core/param_validator'
40
- require_relative 'aws-sdk-core/shared_config'
41
- require_relative 'aws-sdk-core/structure'
42
- require_relative 'aws-sdk-core/type_builder'
43
- require_relative 'aws-sdk-core/util'
44
-
45
- # resource classes
46
- require_relative 'aws-sdk-core/resources/collection'
47
-
48
- # logging
49
- require_relative 'aws-sdk-core/log/formatter'
50
- require_relative 'aws-sdk-core/log/param_filter'
51
- require_relative 'aws-sdk-core/log/param_formatter'
52
-
53
- # stubbing
54
- require_relative 'aws-sdk-core/stubbing/empty_stub'
55
- require_relative 'aws-sdk-core/stubbing/data_applicator'
56
- require_relative 'aws-sdk-core/stubbing/stub_data'
57
- require_relative 'aws-sdk-core/stubbing/xml_error'
58
-
59
- # stubbing protocols
60
- require_relative 'aws-sdk-core/stubbing/protocols/json'
61
- require_relative 'aws-sdk-core/stubbing/protocols/rest'
62
- require_relative 'aws-sdk-core/stubbing/protocols/rest_json'
63
- require_relative 'aws-sdk-core/stubbing/protocols/rest_xml'
64
- require_relative 'aws-sdk-core/stubbing/protocols/query'
65
- require_relative 'aws-sdk-core/stubbing/protocols/ec2'
66
- require_relative 'aws-sdk-core/stubbing/protocols/rpc_v2'
67
- require_relative 'aws-sdk-core/stubbing/protocols/api_gateway'
68
-
69
- # protocols
70
- require_relative 'aws-sdk-core/error_handler'
71
- require_relative 'aws-sdk-core/rest'
72
- require_relative 'aws-sdk-core/xml'
73
- require_relative 'aws-sdk-core/json'
74
- require_relative 'aws-sdk-core/query'
75
- require_relative 'aws-sdk-core/rpc_v2'
76
-
77
- # event stream
78
- require_relative 'aws-sdk-core/binary'
79
- require_relative 'aws-sdk-core/event_emitter'
80
-
81
- # endpoint discovery
82
- require_relative 'aws-sdk-core/endpoint_cache'
83
-
84
- # client metrics / telemetry
85
- require_relative 'aws-sdk-core/client_side_monitoring/request_metrics'
86
- require_relative 'aws-sdk-core/client_side_monitoring/publisher'
87
- require_relative 'aws-sdk-core/telemetry'
88
-
89
- # utilities
90
- require_relative 'aws-sdk-core/arn'
91
- require_relative 'aws-sdk-core/arn_parser'
92
- require_relative 'aws-sdk-core/ec2_metadata'
93
- require_relative 'aws-sdk-core/lru_cache'
94
-
95
- # dynamic endpoints
96
- require_relative 'aws-sdk-core/endpoints'
97
- require_relative 'aws-sdk-core/plugins/signature_v4'
98
-
99
9
  # defaults
100
10
  require_relative 'aws-defaults'
101
11
 
102
- # plugins
103
- # loaded through building STS or SSO ..
104
-
105
- # aws-sdk-sts is included to support Aws::AssumeRoleCredentials
106
- require_relative 'aws-sdk-sts'
107
-
108
- # aws-sdk-sso is included to support Aws::SSOCredentials
109
- require_relative 'aws-sdk-sso'
110
- require_relative 'aws-sdk-ssooidc'
111
-
112
12
  module Aws
113
13
 
114
- CORE_GEM_VERSION = File.read(File.expand_path('../../VERSION', __FILE__)).strip
14
+ autoload :IniParser, 'aws-sdk-core/ini_parser'
15
+
16
+ # Credentials and credentials providers
17
+ autoload :Credentials, 'aws-sdk-core/credentials'
18
+ autoload :CredentialProvider, 'aws-sdk-core/credential_provider'
19
+ autoload :RefreshingCredentials, 'aws-sdk-core/refreshing_credentials'
20
+ autoload :AssumeRoleCredentials, 'aws-sdk-core/assume_role_credentials'
21
+ autoload :AssumeRoleWebIdentityCredentials, 'aws-sdk-core/assume_role_web_identity_credentials'
22
+ autoload :CredentialProviderChain, 'aws-sdk-core/credential_provider_chain'
23
+ autoload :ECSCredentials, 'aws-sdk-core/ecs_credentials'
24
+ autoload :InstanceProfileCredentials, 'aws-sdk-core/instance_profile_credentials'
25
+ autoload :SharedCredentials, 'aws-sdk-core/shared_credentials'
26
+ autoload :ProcessCredentials, 'aws-sdk-core/process_credentials'
27
+ autoload :SSOCredentials, 'aws-sdk-core/sso_credentials'
28
+
29
+
30
+ # tokens and token providers
31
+ autoload :Token, 'aws-sdk-core/token'
32
+ autoload :TokenProvider, 'aws-sdk-core/token_provider'
33
+ autoload :StaticTokenProvider, 'aws-sdk-core/static_token_provider'
34
+ autoload :RefreshingToken, 'aws-sdk-core/refreshing_token'
35
+ autoload :SSOTokenProvider, 'aws-sdk-core/sso_token_provider'
36
+ autoload :TokenProviderChain, 'aws-sdk-core/token_provider_chain'
37
+
38
+ # client modules
39
+ autoload :ClientStubs, 'aws-sdk-core/client_stubs'
40
+ autoload :AsyncClientStubs, 'aws-sdk-core/async_client_stubs'
41
+ autoload :EagerLoader, 'aws-sdk-core/eager_loader'
42
+ autoload :Errors, 'aws-sdk-core/errors'
43
+ autoload :PageableResponse, 'aws-sdk-core/pageable_response'
44
+ autoload :Pager, 'aws-sdk-core/pager'
45
+ autoload :ParamConverter, 'aws-sdk-core/param_converter'
46
+ autoload :ParamValidator, 'aws-sdk-core/param_validator'
47
+ autoload :SharedConfig, 'aws-sdk-core/shared_config'
48
+ autoload :Structure, 'aws-sdk-core/structure'
49
+ autoload :EmptyStructure, 'aws-sdk-core/structure'
50
+ autoload :TypeBuilder, 'aws-sdk-core/type_builder'
51
+ autoload :Util, 'aws-sdk-core/util'
52
+
53
+ # protocols
54
+ autoload :ErrorHandler, 'aws-sdk-core/error_handler'
55
+ autoload :Rest, 'aws-sdk-core/rest'
56
+ autoload :Xml, 'aws-sdk-core/xml'
57
+ autoload :Json, 'aws-sdk-core/json'
58
+ autoload :Query, 'aws-sdk-core/query'
59
+ autoload :RpcV2, 'aws-sdk-core/rpc_v2'
60
+
61
+ # event stream
62
+ autoload :Binary, 'aws-sdk-core/binary'
63
+ autoload :EventEmitter, 'aws-sdk-core/event_emitter'
64
+
65
+ # endpoint discovery
66
+ autoload :EndpointCache, 'aws-sdk-core/endpoint_cache'
67
+
68
+ autoload :Telemetry, 'aws-sdk-core/telemetry'
69
+
70
+ # utilities
71
+ autoload :ARN, 'aws-sdk-core/arn'
72
+ autoload :ARNParser, 'aws-sdk-core/arn_parser'
73
+ autoload :EC2Metadata, 'aws-sdk-core/ec2_metadata'
74
+ autoload :LRUCache, 'aws-sdk-core/lru_cache'
75
+
76
+ # dynamic endpoints
77
+ autoload :Endpoints, 'aws-sdk-core/endpoints'
78
+
79
+ CORE_GEM_VERSION = File.read(File.expand_path('../VERSION', __dir__)).strip
115
80
 
116
81
  @config = {}
117
82
 
@@ -195,3 +160,18 @@ module Aws
195
160
 
196
161
  end
197
162
  end
163
+
164
+ # Setup additional autoloads/modules
165
+ require_relative 'aws-sdk-core/client_side_monitoring'
166
+ require_relative 'aws-sdk-core/log'
167
+ require_relative 'aws-sdk-core/plugins'
168
+ require_relative 'aws-sdk-core/resources'
169
+ require_relative 'aws-sdk-core/stubbing'
170
+ require_relative 'aws-sdk-core/waiters'
171
+
172
+ # aws-sdk-sts is included to support Aws::AssumeRoleCredentials
173
+ require_relative 'aws-sdk-sts'
174
+
175
+ # aws-sdk-sso is included to support Aws::SSOCredentials
176
+ require_relative 'aws-sdk-sso'
177
+ require_relative 'aws-sdk-ssooidc'
@@ -36,8 +36,6 @@ require 'aws-sdk-core/plugins/telemetry.rb'
36
36
  require 'aws-sdk-core/plugins/sign.rb'
37
37
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
38
38
 
39
- Aws::Plugins::GlobalConfiguration.add_identifier(:sso)
40
-
41
39
  module Aws::SSO
42
40
  # An API client for SSO. To construct a client, you need to configure a `:region` and `:credentials`.
43
41
  #
@@ -130,13 +128,15 @@ module Aws::SSO
130
128
  # locations will be searched for credentials:
131
129
  #
132
130
  # * `Aws.config[:credentials]`
133
- # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
134
- # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
131
+ # * The `:access_key_id`, `:secret_access_key`, `:session_token`, and
132
+ # `:account_id` options.
133
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'],
134
+ # ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID']
135
135
  # * `~/.aws/credentials`
136
136
  # * `~/.aws/config`
137
137
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
138
138
  # are very aggressive. Construct and pass an instance of
139
- # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
139
+ # `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
140
140
  # enable retries and extended timeouts. Instance profile credential
141
141
  # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
142
142
  # to true.
@@ -155,6 +155,8 @@ module Aws::SSO
155
155
  #
156
156
  # @option options [String] :access_key_id
157
157
  #
158
+ # @option options [String] :account_id
159
+ #
158
160
  # @option options [Boolean] :active_endpoint_cache (false)
159
161
  # When set to `true`, a thread polling for endpoints will be running in
160
162
  # the background every 60 secs (default). Defaults to `false`.
@@ -369,7 +371,9 @@ module Aws::SSO
369
371
  # sending the request.
370
372
  #
371
373
  # @option options [Aws::SSO::EndpointProvider] :endpoint_provider
372
- # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::SSO::EndpointParameters`
374
+ # The endpoint provider used to resolve endpoints. Any object that responds to
375
+ # `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to
376
+ # `Aws::SSO::EndpointParameters`.
373
377
  #
374
378
  # @option options [Float] :http_continue_timeout (1)
375
379
  # The number of seconds to wait for a 100-continue response before sending the
@@ -665,7 +669,7 @@ module Aws::SSO
665
669
  tracer: tracer
666
670
  )
667
671
  context[:gem_name] = 'aws-sdk-core'
668
- context[:gem_version] = '3.205.0'
672
+ context[:gem_version] = '3.209.1'
669
673
  Seahorse::Client::Request.new(handlers, context)
670
674
  end
671
675
 
@@ -7,6 +7,7 @@
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
10
+
10
11
  module Aws::SSO
11
12
  # @api private
12
13
  module ClientApi
@@ -15,11 +15,11 @@ module Aws::SSO
15
15
  :endpoint_provider,
16
16
  doc_type: 'Aws::SSO::EndpointProvider',
17
17
  rbs_type: 'untyped',
18
- docstring: 'The endpoint provider used to resolve endpoints. Any '\
19
- 'object that responds to `#resolve_endpoint(parameters)` '\
20
- 'where `parameters` is a Struct similar to '\
21
- '`Aws::SSO::EndpointParameters`'
22
- ) do |cfg|
18
+ docstring: <<~DOCS) do |_cfg|
19
+ The endpoint provider used to resolve endpoints. Any object that responds to
20
+ `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to
21
+ `Aws::SSO::EndpointParameters`.
22
+ DOCS
23
23
  Aws::SSO::EndpointProvider.new
24
24
  end
25
25
 
@@ -51,6 +51,9 @@ module Aws::SSO
51
51
  if context[:auth_scheme] && context[:auth_scheme]['name'] == 'sigv4a'
52
52
  metrics << 'SIGV4A_SIGNING'
53
53
  end
54
+ if context.config.credentials&.credentials&.account_id
55
+ metrics << 'RESOLVED_ACCOUNT_ID'
56
+ end
54
57
  Aws::Plugins::UserAgent.metric(*metrics, &block)
55
58
  end
56
59
 
@@ -315,3 +315,4 @@ module Aws::SSO
315
315
 
316
316
  end
317
317
  end
318
+
data/lib/aws-sdk-sso.rb CHANGED
@@ -13,16 +13,7 @@ unless Module.const_defined?(:Aws)
13
13
  require 'aws-sigv4'
14
14
  end
15
15
 
16
- require_relative 'aws-sdk-sso/types'
17
- require_relative 'aws-sdk-sso/client_api'
18
- require_relative 'aws-sdk-sso/plugins/endpoints.rb'
19
- require_relative 'aws-sdk-sso/client'
20
- require_relative 'aws-sdk-sso/errors'
21
- require_relative 'aws-sdk-sso/resource'
22
- require_relative 'aws-sdk-sso/endpoint_parameters'
23
- require_relative 'aws-sdk-sso/endpoint_provider'
24
- require_relative 'aws-sdk-sso/endpoints'
25
- require_relative 'aws-sdk-sso/customizations'
16
+ Aws::Plugins::GlobalConfiguration.add_identifier(:sso)
26
17
 
27
18
  # This module provides support for AWS Single Sign-On. This module is available in the
28
19
  # `aws-sdk-core` gem.
@@ -53,7 +44,20 @@ require_relative 'aws-sdk-sso/customizations'
53
44
  #
54
45
  # @!group service
55
46
  module Aws::SSO
47
+ autoload :Types, 'aws-sdk-sso/types'
48
+ autoload :ClientApi, 'aws-sdk-sso/client_api'
49
+ module Plugins
50
+ autoload :Endpoints, 'aws-sdk-sso/plugins/endpoints.rb'
51
+ end
52
+ autoload :Client, 'aws-sdk-sso/client'
53
+ autoload :Errors, 'aws-sdk-sso/errors'
54
+ autoload :Resource, 'aws-sdk-sso/resource'
55
+ autoload :EndpointParameters, 'aws-sdk-sso/endpoint_parameters'
56
+ autoload :EndpointProvider, 'aws-sdk-sso/endpoint_provider'
57
+ autoload :Endpoints, 'aws-sdk-sso/endpoints'
56
58
 
57
- GEM_VERSION = '3.205.0'
59
+ GEM_VERSION = '3.209.1'
58
60
 
59
61
  end
62
+
63
+ require_relative 'aws-sdk-sso/customizations'
@@ -36,8 +36,6 @@ require 'aws-sdk-core/plugins/telemetry.rb'
36
36
  require 'aws-sdk-core/plugins/sign.rb'
37
37
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
38
38
 
39
- Aws::Plugins::GlobalConfiguration.add_identifier(:ssooidc)
40
-
41
39
  module Aws::SSOOIDC
42
40
  # An API client for SSOOIDC. To construct a client, you need to configure a `:region` and `:credentials`.
43
41
  #
@@ -130,13 +128,15 @@ module Aws::SSOOIDC
130
128
  # locations will be searched for credentials:
131
129
  #
132
130
  # * `Aws.config[:credentials]`
133
- # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
134
- # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
131
+ # * The `:access_key_id`, `:secret_access_key`, `:session_token`, and
132
+ # `:account_id` options.
133
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'],
134
+ # ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID']
135
135
  # * `~/.aws/credentials`
136
136
  # * `~/.aws/config`
137
137
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
138
138
  # are very aggressive. Construct and pass an instance of
139
- # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
139
+ # `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
140
140
  # enable retries and extended timeouts. Instance profile credential
141
141
  # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
142
142
  # to true.
@@ -155,6 +155,8 @@ module Aws::SSOOIDC
155
155
  #
156
156
  # @option options [String] :access_key_id
157
157
  #
158
+ # @option options [String] :account_id
159
+ #
158
160
  # @option options [Boolean] :active_endpoint_cache (false)
159
161
  # When set to `true`, a thread polling for endpoints will be running in
160
162
  # the background every 60 secs (default). Defaults to `false`.
@@ -369,7 +371,9 @@ module Aws::SSOOIDC
369
371
  # sending the request.
370
372
  #
371
373
  # @option options [Aws::SSOOIDC::EndpointProvider] :endpoint_provider
372
- # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::SSOOIDC::EndpointParameters`
374
+ # The endpoint provider used to resolve endpoints. Any object that responds to
375
+ # `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to
376
+ # `Aws::SSOOIDC::EndpointParameters`.
373
377
  #
374
378
  # @option options [Float] :http_continue_timeout (1)
375
379
  # The number of seconds to wait for a 100-continue response before sending the
@@ -1018,7 +1022,7 @@ module Aws::SSOOIDC
1018
1022
  tracer: tracer
1019
1023
  )
1020
1024
  context[:gem_name] = 'aws-sdk-core'
1021
- context[:gem_version] = '3.205.0'
1025
+ context[:gem_version] = '3.209.1'
1022
1026
  Seahorse::Client::Request.new(handlers, context)
1023
1027
  end
1024
1028
 
@@ -7,6 +7,7 @@
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
10
+
10
11
  module Aws::SSOOIDC
11
12
  # @api private
12
13
  module ClientApi
@@ -15,11 +15,11 @@ module Aws::SSOOIDC
15
15
  :endpoint_provider,
16
16
  doc_type: 'Aws::SSOOIDC::EndpointProvider',
17
17
  rbs_type: 'untyped',
18
- docstring: 'The endpoint provider used to resolve endpoints. Any '\
19
- 'object that responds to `#resolve_endpoint(parameters)` '\
20
- 'where `parameters` is a Struct similar to '\
21
- '`Aws::SSOOIDC::EndpointParameters`'
22
- ) do |cfg|
18
+ docstring: <<~DOCS) do |_cfg|
19
+ The endpoint provider used to resolve endpoints. Any object that responds to
20
+ `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to
21
+ `Aws::SSOOIDC::EndpointParameters`.
22
+ DOCS
23
23
  Aws::SSOOIDC::EndpointProvider.new
24
24
  end
25
25
 
@@ -51,6 +51,9 @@ module Aws::SSOOIDC
51
51
  if context[:auth_scheme] && context[:auth_scheme]['name'] == 'sigv4a'
52
52
  metrics << 'SIGV4A_SIGNING'
53
53
  end
54
+ if context.config.credentials&.credentials&.account_id
55
+ metrics << 'RESOLVED_ACCOUNT_ID'
56
+ end
54
57
  Aws::Plugins::UserAgent.metric(*metrics, &block)
55
58
  end
56
59
 
@@ -821,3 +821,4 @@ module Aws::SSOOIDC
821
821
 
822
822
  end
823
823
  end
824
+
@@ -13,16 +13,7 @@ unless Module.const_defined?(:Aws)
13
13
  require 'aws-sigv4'
14
14
  end
15
15
 
16
- require_relative 'aws-sdk-ssooidc/types'
17
- require_relative 'aws-sdk-ssooidc/client_api'
18
- require_relative 'aws-sdk-ssooidc/plugins/endpoints.rb'
19
- require_relative 'aws-sdk-ssooidc/client'
20
- require_relative 'aws-sdk-ssooidc/errors'
21
- require_relative 'aws-sdk-ssooidc/resource'
22
- require_relative 'aws-sdk-ssooidc/endpoint_parameters'
23
- require_relative 'aws-sdk-ssooidc/endpoint_provider'
24
- require_relative 'aws-sdk-ssooidc/endpoints'
25
- require_relative 'aws-sdk-ssooidc/customizations'
16
+ Aws::Plugins::GlobalConfiguration.add_identifier(:ssooidc)
26
17
 
27
18
  # This module provides support for AWS SSO OIDC. This module is available in the
28
19
  # `aws-sdk-core` gem.
@@ -53,7 +44,20 @@ require_relative 'aws-sdk-ssooidc/customizations'
53
44
  #
54
45
  # @!group service
55
46
  module Aws::SSOOIDC
47
+ autoload :Types, 'aws-sdk-ssooidc/types'
48
+ autoload :ClientApi, 'aws-sdk-ssooidc/client_api'
49
+ module Plugins
50
+ autoload :Endpoints, 'aws-sdk-ssooidc/plugins/endpoints.rb'
51
+ end
52
+ autoload :Client, 'aws-sdk-ssooidc/client'
53
+ autoload :Errors, 'aws-sdk-ssooidc/errors'
54
+ autoload :Resource, 'aws-sdk-ssooidc/resource'
55
+ autoload :EndpointParameters, 'aws-sdk-ssooidc/endpoint_parameters'
56
+ autoload :EndpointProvider, 'aws-sdk-ssooidc/endpoint_provider'
57
+ autoload :Endpoints, 'aws-sdk-ssooidc/endpoints'
56
58
 
57
- GEM_VERSION = '3.205.0'
59
+ GEM_VERSION = '3.209.1'
58
60
 
59
61
  end
62
+
63
+ require_relative 'aws-sdk-ssooidc/customizations'
@@ -37,8 +37,6 @@ require 'aws-sdk-core/plugins/sign.rb'
37
37
  require 'aws-sdk-core/plugins/protocols/query.rb'
38
38
  require 'aws-sdk-sts/plugins/sts_regional_endpoints.rb'
39
39
 
40
- Aws::Plugins::GlobalConfiguration.add_identifier(:sts)
41
-
42
40
  module Aws::STS
43
41
  # An API client for STS. To construct a client, you need to configure a `:region` and `:credentials`.
44
42
  #
@@ -132,13 +130,15 @@ module Aws::STS
132
130
  # locations will be searched for credentials:
133
131
  #
134
132
  # * `Aws.config[:credentials]`
135
- # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
136
- # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
133
+ # * The `:access_key_id`, `:secret_access_key`, `:session_token`, and
134
+ # `:account_id` options.
135
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY'],
136
+ # ENV['AWS_SESSION_TOKEN'], and ENV['AWS_ACCOUNT_ID']
137
137
  # * `~/.aws/credentials`
138
138
  # * `~/.aws/config`
139
139
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
140
140
  # are very aggressive. Construct and pass an instance of
141
- # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
141
+ # `Aws::InstanceProfileCredentials` or `Aws::ECSCredentials` to
142
142
  # enable retries and extended timeouts. Instance profile credential
143
143
  # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
144
144
  # to true.
@@ -157,6 +157,8 @@ module Aws::STS
157
157
  #
158
158
  # @option options [String] :access_key_id
159
159
  #
160
+ # @option options [String] :account_id
161
+ #
160
162
  # @option options [Boolean] :active_endpoint_cache (false)
161
163
  # When set to `true`, a thread polling for endpoints will be running in
162
164
  # the background every 60 secs (default). Defaults to `false`.
@@ -376,7 +378,9 @@ module Aws::STS
376
378
  # sending the request.
377
379
  #
378
380
  # @option options [Aws::STS::EndpointProvider] :endpoint_provider
379
- # The endpoint provider used to resolve endpoints. Any object that responds to `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to `Aws::STS::EndpointParameters`
381
+ # The endpoint provider used to resolve endpoints. Any object that responds to
382
+ # `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to
383
+ # `Aws::STS::EndpointParameters`.
380
384
  #
381
385
  # @option options [Float] :http_continue_timeout (1)
382
386
  # The number of seconds to wait for a 100-continue response before sending the
@@ -2412,7 +2416,7 @@ module Aws::STS
2412
2416
  tracer: tracer
2413
2417
  )
2414
2418
  context[:gem_name] = 'aws-sdk-core'
2415
- context[:gem_version] = '3.205.0'
2419
+ context[:gem_version] = '3.209.1'
2416
2420
  Seahorse::Client::Request.new(handlers, context)
2417
2421
  end
2418
2422
 
@@ -7,6 +7,7 @@
7
7
  #
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
10
+
10
11
  module Aws::STS
11
12
  # @api private
12
13
  module ClientApi
@@ -1,4 +1,8 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  # utility classes
4
- require 'aws-sdk-sts/presigner'
4
+ module Aws
5
+ module STS
6
+ autoload :Presigner, 'aws-sdk-sts/presigner'
7
+ end
8
+ end
@@ -15,11 +15,11 @@ module Aws::STS
15
15
  :endpoint_provider,
16
16
  doc_type: 'Aws::STS::EndpointProvider',
17
17
  rbs_type: 'untyped',
18
- docstring: 'The endpoint provider used to resolve endpoints. Any '\
19
- 'object that responds to `#resolve_endpoint(parameters)` '\
20
- 'where `parameters` is a Struct similar to '\
21
- '`Aws::STS::EndpointParameters`'
22
- ) do |cfg|
18
+ docstring: <<~DOCS) do |_cfg|
19
+ The endpoint provider used to resolve endpoints. Any object that responds to
20
+ `#resolve_endpoint(parameters)` where `parameters` is a Struct similar to
21
+ `Aws::STS::EndpointParameters`.
22
+ DOCS
23
23
  Aws::STS::EndpointProvider.new
24
24
  end
25
25
 
@@ -51,6 +51,9 @@ module Aws::STS
51
51
  if context[:auth_scheme] && context[:auth_scheme]['name'] == 'sigv4a'
52
52
  metrics << 'SIGV4A_SIGNING'
53
53
  end
54
+ if context.config.credentials&.credentials&.account_id
55
+ metrics << 'RESOLVED_ACCOUNT_ID'
56
+ end
54
57
  Aws::Plugins::UserAgent.metric(*metrics, &block)
55
58
  end
56
59
 
@@ -1602,3 +1602,4 @@ module Aws::STS
1602
1602
 
1603
1603
  end
1604
1604
  end
1605
+
data/lib/aws-sdk-sts.rb CHANGED
@@ -13,16 +13,7 @@ unless Module.const_defined?(:Aws)
13
13
  require 'aws-sigv4'
14
14
  end
15
15
 
16
- require_relative 'aws-sdk-sts/types'
17
- require_relative 'aws-sdk-sts/client_api'
18
- require_relative 'aws-sdk-sts/plugins/endpoints.rb'
19
- require_relative 'aws-sdk-sts/client'
20
- require_relative 'aws-sdk-sts/errors'
21
- require_relative 'aws-sdk-sts/resource'
22
- require_relative 'aws-sdk-sts/endpoint_parameters'
23
- require_relative 'aws-sdk-sts/endpoint_provider'
24
- require_relative 'aws-sdk-sts/endpoints'
25
- require_relative 'aws-sdk-sts/customizations'
16
+ Aws::Plugins::GlobalConfiguration.add_identifier(:sts)
26
17
 
27
18
  # This module provides support for AWS Security Token Service. This module is available in the
28
19
  # `aws-sdk-core` gem.
@@ -53,7 +44,20 @@ require_relative 'aws-sdk-sts/customizations'
53
44
  #
54
45
  # @!group service
55
46
  module Aws::STS
47
+ autoload :Types, 'aws-sdk-sts/types'
48
+ autoload :ClientApi, 'aws-sdk-sts/client_api'
49
+ module Plugins
50
+ autoload :Endpoints, 'aws-sdk-sts/plugins/endpoints.rb'
51
+ end
52
+ autoload :Client, 'aws-sdk-sts/client'
53
+ autoload :Errors, 'aws-sdk-sts/errors'
54
+ autoload :Resource, 'aws-sdk-sts/resource'
55
+ autoload :EndpointParameters, 'aws-sdk-sts/endpoint_parameters'
56
+ autoload :EndpointProvider, 'aws-sdk-sts/endpoint_provider'
57
+ autoload :Endpoints, 'aws-sdk-sts/endpoints'
56
58
 
57
- GEM_VERSION = '3.205.0'
59
+ GEM_VERSION = '3.209.1'
58
60
 
59
61
  end
62
+
63
+ require_relative 'aws-sdk-sts/customizations'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.205.0
4
+ version: 3.209.1
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: 2024-09-11 00:00:00.000000000 Z
11
+ date: 2024-09-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jmespath
@@ -115,6 +115,7 @@ files:
115
115
  - lib/aws-sdk-core/cbor/cbor_engine.rb
116
116
  - lib/aws-sdk-core/cbor/decoder.rb
117
117
  - lib/aws-sdk-core/cbor/encoder.rb
118
+ - lib/aws-sdk-core/client_side_monitoring.rb
118
119
  - lib/aws-sdk-core/client_side_monitoring/publisher.rb
119
120
  - lib/aws-sdk-core/client_side_monitoring/request_metrics.rb
120
121
  - lib/aws-sdk-core/client_stubs.rb
@@ -152,6 +153,7 @@ files:
152
153
  - lib/aws-sdk-core/json/json_engine.rb
153
154
  - lib/aws-sdk-core/json/oj_engine.rb
154
155
  - lib/aws-sdk-core/json/parser.rb
156
+ - lib/aws-sdk-core/log.rb
155
157
  - lib/aws-sdk-core/log/formatter.rb
156
158
  - lib/aws-sdk-core/log/handler.rb
157
159
  - lib/aws-sdk-core/log/param_filter.rb
@@ -161,6 +163,7 @@ files:
161
163
  - lib/aws-sdk-core/pager.rb
162
164
  - lib/aws-sdk-core/param_converter.rb
163
165
  - lib/aws-sdk-core/param_validator.rb
166
+ - lib/aws-sdk-core/plugins.rb
164
167
  - lib/aws-sdk-core/plugins/api_key.rb
165
168
  - lib/aws-sdk-core/plugins/apig_authorizer_token.rb
166
169
  - lib/aws-sdk-core/plugins/apig_credentials_configuration.rb
@@ -216,6 +219,7 @@ files:
216
219
  - lib/aws-sdk-core/query/param_list.rb
217
220
  - lib/aws-sdk-core/refreshing_credentials.rb
218
221
  - lib/aws-sdk-core/refreshing_token.rb
222
+ - lib/aws-sdk-core/resources.rb
219
223
  - lib/aws-sdk-core/resources/collection.rb
220
224
  - lib/aws-sdk-core/rest.rb
221
225
  - lib/aws-sdk-core/rest/content_type_handler.rb
@@ -242,6 +246,7 @@ files:
242
246
  - lib/aws-sdk-core/sso_token_provider.rb
243
247
  - lib/aws-sdk-core/static_token_provider.rb
244
248
  - lib/aws-sdk-core/structure.rb
249
+ - lib/aws-sdk-core/stubbing.rb
245
250
  - lib/aws-sdk-core/stubbing/data_applicator.rb
246
251
  - lib/aws-sdk-core/stubbing/empty_stub.rb
247
252
  - lib/aws-sdk-core/stubbing/protocols/api_gateway.rb