aws-sdk-core 3.104.4 → 3.111.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.
Files changed (40) hide show
  1. checksums.yaml +4 -4
  2. data/VERSION +1 -1
  3. data/lib/aws-sdk-core.rb +7 -3
  4. data/lib/aws-sdk-core/arn.rb +13 -0
  5. data/lib/aws-sdk-core/credential_provider_chain.rb +19 -0
  6. data/lib/aws-sdk-core/ec2_metadata.rb +218 -0
  7. data/lib/aws-sdk-core/errors.rb +5 -2
  8. data/lib/aws-sdk-core/json/json_engine.rb +3 -3
  9. data/lib/aws-sdk-core/json/oj_engine.rb +3 -3
  10. data/lib/aws-sdk-core/pageable_response.rb +2 -2
  11. data/lib/aws-sdk-core/plugins/credentials_configuration.rb +22 -7
  12. data/lib/aws-sdk-core/plugins/endpoint_pattern.rb +7 -6
  13. data/lib/aws-sdk-core/plugins/regional_endpoint.rb +1 -1
  14. data/lib/aws-sdk-core/plugins/retry_errors.rb +4 -3
  15. data/lib/aws-sdk-core/shared_config.rb +33 -0
  16. data/lib/aws-sdk-core/sso_credentials.rb +132 -0
  17. data/lib/aws-sdk-core/stubbing/protocols/rest_json.rb +1 -1
  18. data/lib/aws-sdk-core/stubbing/protocols/rest_xml.rb +0 -2
  19. data/lib/aws-sdk-core/xml/builder.rb +1 -1
  20. data/lib/aws-sdk-core/xml/parser.rb +5 -0
  21. data/lib/aws-sdk-core/xml/parser/engines/rexml.rb +8 -0
  22. data/lib/aws-sdk-sso.rb +55 -0
  23. data/lib/aws-sdk-sso/client.rb +548 -0
  24. data/lib/aws-sdk-sso/client_api.rb +190 -0
  25. data/lib/aws-sdk-sso/customizations.rb +1 -0
  26. data/lib/aws-sdk-sso/errors.rb +102 -0
  27. data/lib/aws-sdk-sso/plugins/content_type.rb +25 -0
  28. data/lib/aws-sdk-sso/resource.rb +26 -0
  29. data/lib/aws-sdk-sso/types.rb +352 -0
  30. data/lib/aws-sdk-sts.rb +7 -2
  31. data/lib/aws-sdk-sts/client.rb +24 -9
  32. data/lib/aws-sdk-sts/client_api.rb +1 -0
  33. data/lib/aws-sdk-sts/types.rb +2 -2
  34. data/lib/seahorse/client/h2/connection.rb +1 -2
  35. data/lib/seahorse/client/net_http/handler.rb +2 -1
  36. data/lib/seahorse/client/plugins/h2.rb +4 -1
  37. data/lib/seahorse/client/plugins/net_http.rb +4 -1
  38. data/lib/seahorse/client/plugins/response_target.rb +0 -1
  39. data/lib/seahorse/util.rb +6 -1
  40. metadata +12 -2
@@ -8,6 +8,11 @@
8
8
  # WARNING ABOUT GENERATED CODE
9
9
 
10
10
 
11
+ unless Module.const_defined?(:Aws)
12
+ require 'aws-sdk-core'
13
+ require 'aws-sigv4'
14
+ end
15
+
11
16
  require_relative 'aws-sdk-sts/types'
12
17
  require_relative 'aws-sdk-sts/client_api'
13
18
  require_relative 'aws-sdk-sts/client'
@@ -42,9 +47,9 @@ require_relative 'aws-sdk-sts/customizations'
42
47
  #
43
48
  # See {Errors} for more information.
44
49
  #
45
- # @service
50
+ # @!group service
46
51
  module Aws::STS
47
52
 
48
- GEM_VERSION = '3.104.4'
53
+ GEM_VERSION = '3.111.2'
49
54
 
50
55
  end
@@ -87,13 +87,28 @@ module Aws::STS
87
87
  # * `Aws::Credentials` - Used for configuring static, non-refreshing
88
88
  # credentials.
89
89
  #
90
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
91
+ # shared file, such as `~/.aws/config`.
92
+ #
93
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
94
+ #
95
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
96
+ # assume a role after providing credentials via the web.
97
+ #
98
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
99
+ # access token generated from `aws login`.
100
+ #
101
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
102
+ # process that outputs to stdout.
103
+ #
90
104
  # * `Aws::InstanceProfileCredentials` - Used for loading credentials
91
105
  # from an EC2 IMDS on an EC2 instance.
92
106
  #
93
- # * `Aws::SharedCredentials` - Used for loading credentials from a
94
- # shared file, such as `~/.aws/config`.
107
+ # * `Aws::ECSCredentials` - Used for loading credentials from
108
+ # instances running in ECS.
95
109
  #
96
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
110
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
111
+ # from the Cognito Identity service.
97
112
  #
98
113
  # When `:credentials` are not configured directly, the following
99
114
  # locations will be searched for credentials:
@@ -103,10 +118,10 @@ module Aws::STS
103
118
  # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
104
119
  # * `~/.aws/credentials`
105
120
  # * `~/.aws/config`
106
- # * EC2 IMDS instance profile - When used by default, the timeouts are
107
- # very aggressive. Construct and pass an instance of
108
- # `Aws::InstanceProfileCredentails` to enable retries and extended
109
- # timeouts.
121
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
122
+ # are very aggressive. Construct and pass an instance of
123
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
124
+ # enable retries and extended timeouts.
110
125
  #
111
126
  # @option options [required, String] :region
112
127
  # The AWS region to connect to. The configured `:region` is
@@ -1263,7 +1278,7 @@ module Aws::STS
1263
1278
  # [15]: http://openid.net/specs/openid-connect-core-1_0.html#SubjectIDTypes
1264
1279
  # [16]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_oidc_manual.html
1265
1280
  # [17]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html#api_assumerolewithwebidentity
1266
- # [18]: https://web-identity-federation-playground.s3.amazonaws.com/index.html
1281
+ # [18]: https://aws.amazon.com/blogs/aws/the-aws-web-identity-federation-playground/
1267
1282
  # [19]: http://aws.amazon.com/articles/web-identity-federation-with-mobile-applications
1268
1283
  #
1269
1284
  # @option params [required, String] :role_arn
@@ -2189,7 +2204,7 @@ module Aws::STS
2189
2204
  params: params,
2190
2205
  config: config)
2191
2206
  context[:gem_name] = 'aws-sdk-core'
2192
- context[:gem_version] = '3.104.4'
2207
+ context[:gem_version] = '3.111.2'
2193
2208
  Seahorse::Client::Request.new(handlers, context)
2194
2209
  end
2195
2210
 
@@ -255,6 +255,7 @@ module Aws::STS
255
255
  o.errors << Shapes::ShapeRef.new(shape: MalformedPolicyDocumentException)
256
256
  o.errors << Shapes::ShapeRef.new(shape: PackedPolicyTooLargeException)
257
257
  o.errors << Shapes::ShapeRef.new(shape: RegionDisabledException)
258
+ o.errors << Shapes::ShapeRef.new(shape: ExpiredTokenException)
258
259
  end)
259
260
 
260
261
  api.add_operation(:assume_role_with_saml, Seahorse::Model::Operation.new.tap do |o|
@@ -479,7 +479,7 @@ module Aws::STS
479
479
  :policy_arns,
480
480
  :policy,
481
481
  :duration_seconds)
482
- SENSITIVE = [:saml_assertion]
482
+ SENSITIVE = []
483
483
  include Aws::Structure
484
484
  end
485
485
 
@@ -730,7 +730,7 @@ module Aws::STS
730
730
  :policy_arns,
731
731
  :policy,
732
732
  :duration_seconds)
733
- SENSITIVE = [:web_identity_token]
733
+ SENSITIVE = []
734
734
  include Aws::Structure
735
735
  end
736
736
 
@@ -75,7 +75,7 @@ module Seahorse
75
75
  def connect(endpoint)
76
76
  @mutex.synchronize {
77
77
  if @status == :ready
78
- tcp, addr = _tcp_socket(endpoint)
78
+ tcp, addr = _tcp_socket(endpoint)
79
79
  debug_output("opening connection to #{endpoint.host}:#{endpoint.port} ...")
80
80
  _nonblocking_connect(tcp, addr)
81
81
  debug_output('opened')
@@ -245,4 +245,3 @@ module Seahorse
245
245
  end
246
246
  end
247
247
  end
248
-
@@ -25,7 +25,8 @@ module Seahorse
25
25
  SocketError, EOFError, IOError, Timeout::Error,
26
26
  Errno::ECONNABORTED, Errno::ECONNRESET, Errno::EPIPE,
27
27
  Errno::EINVAL, Errno::ETIMEDOUT, OpenSSL::SSL::SSLError,
28
- Errno::EHOSTUNREACH, Errno::ECONNREFUSED
28
+ Errno::EHOSTUNREACH, Errno::ECONNREFUSED,
29
+ Net::HTTPFatalError # for proxy connection failures
29
30
  ]
30
31
 
31
32
  # does not exist in Ruby 1.9.3
@@ -28,11 +28,14 @@ Defaults to `true`, raises errors if exist when #wait or #join! is called upon a
28
28
  DOCS
29
29
 
30
30
  # SSL Context
31
- option(:ssl_ca_bundle, default: nil, doc_type: String, docstring: <<-DOCS)
31
+ option(:ssl_ca_bundle, default: nil, doc_type: String, docstring: <<-DOCS) do |cfg|
32
32
  Full path to the SSL certificate authority bundle file that should be used when
33
33
  verifying peer certificates. If you do not pass `:ssl_ca_directory` or `:ssl_ca_bundle`
34
34
  the system default will be used if available.
35
35
  DOCS
36
+ ENV['AWS_CA_BUNDLE'] ||
37
+ Aws.shared_config.ca_bundle(profile: cfg.profile) if cfg.respond_to?(:profile)
38
+ end
36
39
 
37
40
  option(:ssl_ca_directory, default: nil, doc_type: String, docstring: <<-DOCS)
38
41
  Full path of the directory that contains the unbundled SSL certificate authority
@@ -21,7 +21,10 @@ module Seahorse
21
21
 
22
22
  option(:ssl_verify_peer, default: true, doc_type: 'Boolean', docstring: '')
23
23
 
24
- option(:ssl_ca_bundle, default: nil, doc_type: String, docstring: '')
24
+ option(:ssl_ca_bundle, doc_type: String, docstring: '') do |cfg|
25
+ ENV['AWS_CA_BUNDLE'] ||
26
+ Aws.shared_config.ca_bundle(profile: cfg.profile) if cfg.respond_to?(:profile)
27
+ end
25
28
 
26
29
  option(:ssl_ca_directory, default: nil, doc_type: String, docstring: '')
27
30
 
@@ -27,7 +27,6 @@ module Seahorse
27
27
  private
28
28
 
29
29
  def add_event_listeners(context, target)
30
- handler = self
31
30
  context.http_response.on_headers(200..299) do
32
31
  # In a fresh response body will be a StringIO
33
32
  # However, when a request is retried we may have
@@ -6,7 +6,6 @@ module Seahorse
6
6
  # @api private
7
7
  module Util
8
8
  class << self
9
-
10
9
  def uri_escape(string)
11
10
  CGI.escape(string.to_s.encode('UTF-8')).gsub('+', '%20').gsub('%7E', '~')
12
11
  end
@@ -15,6 +14,12 @@ module Seahorse
15
14
  path.gsub(/[^\/]+/) { |part| uri_escape(part) }
16
15
  end
17
16
 
17
+ # Checks for a valid host label
18
+ # @see https://tools.ietf.org/html/rfc3986#section-3.2.2
19
+ # @see https://tools.ietf.org/html/rfc1123#page-13
20
+ def host_label?(str)
21
+ str =~ /^(?!-)[a-zA-Z0-9-]{1,63}(?<!-)$/
22
+ end
18
23
  end
19
24
  end
20
25
  end
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.104.4
4
+ version: 3.111.2
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: 2020-08-19 00:00:00.000000000 Z
11
+ date: 2021-01-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jmespath
@@ -108,6 +108,7 @@ files:
108
108
  - lib/aws-sdk-core/credentials.rb
109
109
  - lib/aws-sdk-core/deprecations.rb
110
110
  - lib/aws-sdk-core/eager_loader.rb
111
+ - lib/aws-sdk-core/ec2_metadata.rb
111
112
  - lib/aws-sdk-core/ecs_credentials.rb
112
113
  - lib/aws-sdk-core/endpoint_cache.rb
113
114
  - lib/aws-sdk-core/errors.rb
@@ -188,6 +189,7 @@ files:
188
189
  - lib/aws-sdk-core/rest/response/status_code.rb
189
190
  - lib/aws-sdk-core/shared_config.rb
190
191
  - lib/aws-sdk-core/shared_credentials.rb
192
+ - lib/aws-sdk-core/sso_credentials.rb
191
193
  - lib/aws-sdk-core/structure.rb
192
194
  - lib/aws-sdk-core/stubbing/data_applicator.rb
193
195
  - lib/aws-sdk-core/stubbing/empty_stub.rb
@@ -221,6 +223,14 @@ files:
221
223
  - lib/aws-sdk-core/xml/parser/frame.rb
222
224
  - lib/aws-sdk-core/xml/parser/parsing_error.rb
223
225
  - lib/aws-sdk-core/xml/parser/stack.rb
226
+ - lib/aws-sdk-sso.rb
227
+ - lib/aws-sdk-sso/client.rb
228
+ - lib/aws-sdk-sso/client_api.rb
229
+ - lib/aws-sdk-sso/customizations.rb
230
+ - lib/aws-sdk-sso/errors.rb
231
+ - lib/aws-sdk-sso/plugins/content_type.rb
232
+ - lib/aws-sdk-sso/resource.rb
233
+ - lib/aws-sdk-sso/types.rb
224
234
  - lib/aws-sdk-sts.rb
225
235
  - lib/aws-sdk-sts/client.rb
226
236
  - lib/aws-sdk-sts/client_api.rb