aws-sdk-core 3.46.2 → 3.126.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 (206) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +1258 -0
  3. data/LICENSE.txt +202 -0
  4. data/VERSION +1 -1
  5. data/lib/aws-defaults/default_configuration.rb +153 -0
  6. data/lib/aws-defaults/defaults_mode_config_resolver.rb +107 -0
  7. data/lib/aws-defaults.rb +3 -0
  8. data/lib/aws-sdk-core/arn.rb +92 -0
  9. data/lib/aws-sdk-core/arn_parser.rb +40 -0
  10. data/lib/aws-sdk-core/assume_role_credentials.rb +20 -0
  11. data/lib/aws-sdk-core/assume_role_web_identity_credentials.rb +109 -0
  12. data/lib/aws-sdk-core/async_client_stubs.rb +82 -0
  13. data/lib/aws-sdk-core/binary/decode_handler.rb +11 -1
  14. data/lib/aws-sdk-core/binary/encode_handler.rb +34 -0
  15. data/lib/aws-sdk-core/binary/event_builder.rb +124 -0
  16. data/lib/aws-sdk-core/binary/event_parser.rb +50 -18
  17. data/lib/aws-sdk-core/binary/event_stream_decoder.rb +7 -2
  18. data/lib/aws-sdk-core/binary/event_stream_encoder.rb +55 -0
  19. data/lib/aws-sdk-core/binary.rb +5 -0
  20. data/lib/aws-sdk-core/client_side_monitoring/publisher.rb +11 -1
  21. data/lib/aws-sdk-core/client_side_monitoring/request_metrics.rb +2 -0
  22. data/lib/aws-sdk-core/client_stubs.rb +16 -13
  23. data/lib/aws-sdk-core/credential_provider.rb +1 -30
  24. data/lib/aws-sdk-core/credential_provider_chain.rb +102 -40
  25. data/lib/aws-sdk-core/credentials.rb +2 -0
  26. data/lib/aws-sdk-core/deprecations.rb +17 -11
  27. data/lib/aws-sdk-core/eager_loader.rb +2 -0
  28. data/lib/aws-sdk-core/ec2_metadata.rb +238 -0
  29. data/lib/aws-sdk-core/ecs_credentials.rb +18 -9
  30. data/lib/aws-sdk-core/endpoint_cache.rb +16 -11
  31. data/lib/aws-sdk-core/errors.rb +138 -15
  32. data/lib/aws-sdk-core/event_emitter.rb +44 -0
  33. data/lib/aws-sdk-core/ini_parser.rb +2 -0
  34. data/lib/aws-sdk-core/instance_profile_credentials.rb +179 -42
  35. data/lib/aws-sdk-core/json/builder.rb +2 -0
  36. data/lib/aws-sdk-core/json/error_handler.rb +21 -2
  37. data/lib/aws-sdk-core/json/handler.rb +21 -1
  38. data/lib/aws-sdk-core/json/json_engine.rb +12 -8
  39. data/lib/aws-sdk-core/json/oj_engine.rb +35 -6
  40. data/lib/aws-sdk-core/json/parser.rb +10 -0
  41. data/lib/aws-sdk-core/json.rb +11 -28
  42. data/lib/aws-sdk-core/log/formatter.rb +16 -4
  43. data/lib/aws-sdk-core/log/handler.rb +2 -0
  44. data/lib/aws-sdk-core/log/param_filter.rb +38 -13
  45. data/lib/aws-sdk-core/log/param_formatter.rb +2 -0
  46. data/lib/aws-sdk-core/pageable_response.rb +48 -24
  47. data/lib/aws-sdk-core/pager.rb +5 -0
  48. data/lib/aws-sdk-core/param_converter.rb +2 -0
  49. data/lib/aws-sdk-core/param_validator.rb +63 -7
  50. data/lib/aws-sdk-core/plugins/api_key.rb +5 -1
  51. data/lib/aws-sdk-core/plugins/apig_authorizer_token.rb +2 -0
  52. data/lib/aws-sdk-core/plugins/apig_credentials_configuration.rb +2 -0
  53. data/lib/aws-sdk-core/plugins/apig_user_agent.rb +2 -0
  54. data/lib/aws-sdk-core/plugins/client_metrics_plugin.rb +28 -1
  55. data/lib/aws-sdk-core/plugins/client_metrics_send_plugin.rb +2 -0
  56. data/lib/aws-sdk-core/plugins/credentials_configuration.rb +26 -7
  57. data/lib/aws-sdk-core/plugins/defaults_mode.rb +40 -0
  58. data/lib/aws-sdk-core/plugins/endpoint_discovery.rb +12 -4
  59. data/lib/aws-sdk-core/plugins/endpoint_pattern.rb +8 -6
  60. data/lib/aws-sdk-core/plugins/event_stream_configuration.rb +16 -0
  61. data/lib/aws-sdk-core/plugins/global_configuration.rb +2 -0
  62. data/lib/aws-sdk-core/plugins/helpful_socket_errors.rb +2 -0
  63. data/lib/aws-sdk-core/plugins/http_checksum.rb +57 -0
  64. data/lib/aws-sdk-core/plugins/idempotency_token.rb +2 -0
  65. data/lib/aws-sdk-core/plugins/invocation_id.rb +35 -0
  66. data/lib/aws-sdk-core/plugins/jsonvalue_converter.rb +2 -0
  67. data/lib/aws-sdk-core/plugins/logging.rb +2 -0
  68. data/lib/aws-sdk-core/plugins/param_converter.rb +2 -0
  69. data/lib/aws-sdk-core/plugins/param_validator.rb +2 -0
  70. data/lib/aws-sdk-core/plugins/protocols/api_gateway.rb +19 -0
  71. data/lib/aws-sdk-core/plugins/protocols/ec2.rb +2 -0
  72. data/lib/aws-sdk-core/plugins/protocols/json_rpc.rb +2 -0
  73. data/lib/aws-sdk-core/plugins/protocols/query.rb +2 -0
  74. data/lib/aws-sdk-core/plugins/protocols/rest_json.rb +18 -1
  75. data/lib/aws-sdk-core/plugins/protocols/rest_xml.rb +2 -0
  76. data/lib/aws-sdk-core/plugins/recursion_detection.rb +27 -0
  77. data/lib/aws-sdk-core/plugins/regional_endpoint.rb +74 -16
  78. data/lib/aws-sdk-core/plugins/response_paging.rb +2 -0
  79. data/lib/aws-sdk-core/plugins/retries/client_rate_limiter.rb +139 -0
  80. data/lib/aws-sdk-core/plugins/retries/clock_skew.rb +100 -0
  81. data/lib/aws-sdk-core/plugins/retries/error_inspector.rb +146 -0
  82. data/lib/aws-sdk-core/plugins/retries/retry_quota.rb +59 -0
  83. data/lib/aws-sdk-core/plugins/retry_errors.rb +295 -107
  84. data/lib/aws-sdk-core/plugins/signature_v2.rb +2 -0
  85. data/lib/aws-sdk-core/plugins/signature_v4.rb +28 -25
  86. data/lib/aws-sdk-core/plugins/stub_responses.rb +24 -7
  87. data/lib/aws-sdk-core/plugins/transfer_encoding.rb +53 -0
  88. data/lib/aws-sdk-core/plugins/user_agent.rb +6 -8
  89. data/lib/aws-sdk-core/process_credentials.rb +12 -5
  90. data/lib/aws-sdk-core/query/ec2_param_builder.rb +2 -0
  91. data/lib/aws-sdk-core/query/handler.rb +2 -0
  92. data/lib/aws-sdk-core/query/param.rb +2 -0
  93. data/lib/aws-sdk-core/query/param_builder.rb +2 -0
  94. data/lib/aws-sdk-core/query/param_list.rb +2 -0
  95. data/lib/aws-sdk-core/query.rb +2 -0
  96. data/lib/aws-sdk-core/refreshing_credentials.rb +15 -2
  97. data/lib/aws-sdk-core/resources/collection.rb +2 -0
  98. data/lib/aws-sdk-core/rest/handler.rb +2 -0
  99. data/lib/aws-sdk-core/rest/request/body.rb +21 -1
  100. data/lib/aws-sdk-core/rest/request/builder.rb +2 -0
  101. data/lib/aws-sdk-core/rest/request/endpoint.rb +10 -3
  102. data/lib/aws-sdk-core/rest/request/headers.rb +20 -6
  103. data/lib/aws-sdk-core/rest/request/querystring_builder.rb +4 -2
  104. data/lib/aws-sdk-core/rest/response/body.rb +2 -0
  105. data/lib/aws-sdk-core/rest/response/headers.rb +6 -3
  106. data/lib/aws-sdk-core/rest/response/parser.rb +2 -0
  107. data/lib/aws-sdk-core/rest/response/status_code.rb +2 -0
  108. data/lib/aws-sdk-core/rest.rb +2 -0
  109. data/lib/aws-sdk-core/shared_config.rb +153 -127
  110. data/lib/aws-sdk-core/shared_credentials.rb +9 -1
  111. data/lib/aws-sdk-core/sso_credentials.rb +136 -0
  112. data/lib/aws-sdk-core/structure.rb +14 -4
  113. data/lib/aws-sdk-core/stubbing/data_applicator.rb +2 -0
  114. data/lib/aws-sdk-core/stubbing/empty_stub.rb +2 -0
  115. data/lib/aws-sdk-core/stubbing/protocols/api_gateway.rb +2 -0
  116. data/lib/aws-sdk-core/stubbing/protocols/ec2.rb +2 -0
  117. data/lib/aws-sdk-core/stubbing/protocols/json.rb +3 -1
  118. data/lib/aws-sdk-core/stubbing/protocols/query.rb +4 -2
  119. data/lib/aws-sdk-core/stubbing/protocols/rest.rb +52 -7
  120. data/lib/aws-sdk-core/stubbing/protocols/rest_json.rb +3 -1
  121. data/lib/aws-sdk-core/stubbing/protocols/rest_xml.rb +2 -2
  122. data/lib/aws-sdk-core/stubbing/stub_data.rb +15 -4
  123. data/lib/aws-sdk-core/stubbing/xml_error.rb +2 -0
  124. data/lib/aws-sdk-core/type_builder.rb +2 -0
  125. data/lib/aws-sdk-core/util.rb +6 -0
  126. data/lib/aws-sdk-core/waiters/errors.rb +2 -0
  127. data/lib/aws-sdk-core/waiters/poller.rb +2 -0
  128. data/lib/aws-sdk-core/waiters/waiter.rb +4 -2
  129. data/lib/aws-sdk-core/waiters.rb +2 -0
  130. data/lib/aws-sdk-core/xml/builder.rb +5 -3
  131. data/lib/aws-sdk-core/xml/default_list.rb +2 -0
  132. data/lib/aws-sdk-core/xml/default_map.rb +2 -0
  133. data/lib/aws-sdk-core/xml/doc_builder.rb +15 -4
  134. data/lib/aws-sdk-core/xml/error_handler.rb +29 -4
  135. data/lib/aws-sdk-core/xml/parser/engines/libxml.rb +2 -0
  136. data/lib/aws-sdk-core/xml/parser/engines/nokogiri.rb +2 -0
  137. data/lib/aws-sdk-core/xml/parser/engines/oga.rb +2 -0
  138. data/lib/aws-sdk-core/xml/parser/engines/ox.rb +3 -1
  139. data/lib/aws-sdk-core/xml/parser/engines/rexml.rb +4 -1
  140. data/lib/aws-sdk-core/xml/parser/frame.rb +25 -0
  141. data/lib/aws-sdk-core/xml/parser/parsing_error.rb +2 -0
  142. data/lib/aws-sdk-core/xml/parser/stack.rb +2 -0
  143. data/lib/aws-sdk-core/xml/parser.rb +7 -0
  144. data/lib/aws-sdk-core/xml.rb +2 -0
  145. data/lib/aws-sdk-core.rb +23 -4
  146. data/lib/aws-sdk-sso/client.rb +568 -0
  147. data/lib/aws-sdk-sso/client_api.rb +190 -0
  148. data/lib/aws-sdk-sso/customizations.rb +1 -0
  149. data/lib/aws-sdk-sso/errors.rb +102 -0
  150. data/lib/aws-sdk-sso/resource.rb +26 -0
  151. data/lib/aws-sdk-sso/types.rb +352 -0
  152. data/lib/aws-sdk-sso.rb +55 -0
  153. data/lib/aws-sdk-sts/client.rb +1282 -531
  154. data/lib/aws-sdk-sts/client_api.rb +76 -1
  155. data/lib/aws-sdk-sts/customizations.rb +4 -0
  156. data/lib/aws-sdk-sts/errors.rb +153 -1
  157. data/lib/aws-sdk-sts/plugins/sts_regional_endpoints.rb +38 -0
  158. data/lib/aws-sdk-sts/presigner.rb +75 -0
  159. data/lib/aws-sdk-sts/resource.rb +4 -1
  160. data/lib/aws-sdk-sts/types.rb +958 -229
  161. data/lib/aws-sdk-sts.rb +16 -6
  162. data/lib/seahorse/client/async_base.rb +52 -0
  163. data/lib/seahorse/client/async_response.rb +64 -0
  164. data/lib/seahorse/client/base.rb +7 -2
  165. data/lib/seahorse/client/block_io.rb +6 -2
  166. data/lib/seahorse/client/configuration.rb +7 -1
  167. data/lib/seahorse/client/events.rb +3 -1
  168. data/lib/seahorse/client/h2/connection.rb +250 -0
  169. data/lib/seahorse/client/h2/handler.rb +152 -0
  170. data/lib/seahorse/client/handler.rb +2 -0
  171. data/lib/seahorse/client/handler_builder.rb +2 -0
  172. data/lib/seahorse/client/handler_list.rb +2 -0
  173. data/lib/seahorse/client/handler_list_entry.rb +6 -4
  174. data/lib/seahorse/client/http/async_response.rb +44 -0
  175. data/lib/seahorse/client/http/headers.rb +2 -0
  176. data/lib/seahorse/client/http/request.rb +5 -3
  177. data/lib/seahorse/client/http/response.rb +18 -11
  178. data/lib/seahorse/client/logging/formatter.rb +6 -2
  179. data/lib/seahorse/client/logging/handler.rb +2 -0
  180. data/lib/seahorse/client/managed_file.rb +2 -0
  181. data/lib/seahorse/client/net_http/connection_pool.rb +30 -23
  182. data/lib/seahorse/client/net_http/handler.rb +24 -7
  183. data/lib/seahorse/client/net_http/patches.rb +15 -84
  184. data/lib/seahorse/client/networking_error.rb +30 -0
  185. data/lib/seahorse/client/plugin.rb +10 -7
  186. data/lib/seahorse/client/plugin_list.rb +2 -0
  187. data/lib/seahorse/client/plugins/content_length.rb +14 -3
  188. data/lib/seahorse/client/plugins/endpoint.rb +4 -2
  189. data/lib/seahorse/client/plugins/h2.rb +69 -0
  190. data/lib/seahorse/client/plugins/logging.rb +2 -0
  191. data/lib/seahorse/client/plugins/net_http.rb +39 -3
  192. data/lib/seahorse/client/plugins/operation_methods.rb +2 -0
  193. data/lib/seahorse/client/plugins/raise_response_errors.rb +2 -0
  194. data/lib/seahorse/client/plugins/request_callback.rb +110 -0
  195. data/lib/seahorse/client/plugins/response_target.rb +23 -14
  196. data/lib/seahorse/client/request.rb +2 -0
  197. data/lib/seahorse/client/request_context.rb +2 -0
  198. data/lib/seahorse/client/response.rb +5 -5
  199. data/lib/seahorse/model/api.rb +10 -0
  200. data/lib/seahorse/model/authorizer.rb +2 -0
  201. data/lib/seahorse/model/operation.rb +9 -0
  202. data/lib/seahorse/model/shapes.rb +29 -2
  203. data/lib/seahorse/util.rb +8 -1
  204. data/lib/seahorse/version.rb +2 -0
  205. data/lib/seahorse.rb +12 -0
  206. metadata +64 -14
@@ -0,0 +1,568 @@
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
+ require 'seahorse/client/plugins/content_length.rb'
11
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
12
+ require 'aws-sdk-core/plugins/logging.rb'
13
+ require 'aws-sdk-core/plugins/param_converter.rb'
14
+ require 'aws-sdk-core/plugins/param_validator.rb'
15
+ require 'aws-sdk-core/plugins/user_agent.rb'
16
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
17
+ require 'aws-sdk-core/plugins/retry_errors.rb'
18
+ require 'aws-sdk-core/plugins/global_configuration.rb'
19
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
20
+ require 'aws-sdk-core/plugins/endpoint_discovery.rb'
21
+ require 'aws-sdk-core/plugins/endpoint_pattern.rb'
22
+ require 'aws-sdk-core/plugins/response_paging.rb'
23
+ require 'aws-sdk-core/plugins/stub_responses.rb'
24
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
25
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
26
+ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
+ require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
+ require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
+ require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
31
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
32
+ require 'aws-sdk-core/plugins/signature_v4.rb'
33
+ require 'aws-sdk-core/plugins/protocols/rest_json.rb'
34
+
35
+ Aws::Plugins::GlobalConfiguration.add_identifier(:sso)
36
+
37
+ module Aws::SSO
38
+ # An API client for SSO. To construct a client, you need to configure a `:region` and `:credentials`.
39
+ #
40
+ # client = Aws::SSO::Client.new(
41
+ # region: region_name,
42
+ # credentials: credentials,
43
+ # # ...
44
+ # )
45
+ #
46
+ # For details on configuring region and credentials see
47
+ # the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
48
+ #
49
+ # See {#initialize} for a full list of supported configuration options.
50
+ class Client < Seahorse::Client::Base
51
+
52
+ include Aws::ClientStubs
53
+
54
+ @identifier = :sso
55
+
56
+ set_api(ClientApi::API)
57
+
58
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
59
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
60
+ add_plugin(Aws::Plugins::Logging)
61
+ add_plugin(Aws::Plugins::ParamConverter)
62
+ add_plugin(Aws::Plugins::ParamValidator)
63
+ add_plugin(Aws::Plugins::UserAgent)
64
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
65
+ add_plugin(Aws::Plugins::RetryErrors)
66
+ add_plugin(Aws::Plugins::GlobalConfiguration)
67
+ add_plugin(Aws::Plugins::RegionalEndpoint)
68
+ add_plugin(Aws::Plugins::EndpointDiscovery)
69
+ add_plugin(Aws::Plugins::EndpointPattern)
70
+ add_plugin(Aws::Plugins::ResponsePaging)
71
+ add_plugin(Aws::Plugins::StubResponses)
72
+ add_plugin(Aws::Plugins::IdempotencyToken)
73
+ add_plugin(Aws::Plugins::JsonvalueConverter)
74
+ add_plugin(Aws::Plugins::ClientMetricsPlugin)
75
+ add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
76
+ add_plugin(Aws::Plugins::TransferEncoding)
77
+ add_plugin(Aws::Plugins::HttpChecksum)
78
+ add_plugin(Aws::Plugins::DefaultsMode)
79
+ add_plugin(Aws::Plugins::RecursionDetection)
80
+ add_plugin(Aws::Plugins::SignatureV4)
81
+ add_plugin(Aws::Plugins::Protocols::RestJson)
82
+
83
+ # @overload initialize(options)
84
+ # @param [Hash] options
85
+ # @option options [required, Aws::CredentialProvider] :credentials
86
+ # Your AWS credentials. This can be an instance of any one of the
87
+ # following classes:
88
+ #
89
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
90
+ # credentials.
91
+ #
92
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
93
+ # shared file, such as `~/.aws/config`.
94
+ #
95
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
96
+ #
97
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
98
+ # assume a role after providing credentials via the web.
99
+ #
100
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
101
+ # access token generated from `aws login`.
102
+ #
103
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
104
+ # process that outputs to stdout.
105
+ #
106
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
107
+ # from an EC2 IMDS on an EC2 instance.
108
+ #
109
+ # * `Aws::ECSCredentials` - Used for loading credentials from
110
+ # instances running in ECS.
111
+ #
112
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
113
+ # from the Cognito Identity service.
114
+ #
115
+ # When `:credentials` are not configured directly, the following
116
+ # locations will be searched for credentials:
117
+ #
118
+ # * `Aws.config[:credentials]`
119
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
120
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
121
+ # * `~/.aws/credentials`
122
+ # * `~/.aws/config`
123
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
124
+ # are very aggressive. Construct and pass an instance of
125
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
126
+ # enable retries and extended timeouts. Instance profile credential
127
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
128
+ # to true.
129
+ #
130
+ # @option options [required, String] :region
131
+ # The AWS region to connect to. The configured `:region` is
132
+ # used to determine the service `:endpoint`. When not passed,
133
+ # a default `:region` is searched for in the following locations:
134
+ #
135
+ # * `Aws.config[:region]`
136
+ # * `ENV['AWS_REGION']`
137
+ # * `ENV['AMAZON_REGION']`
138
+ # * `ENV['AWS_DEFAULT_REGION']`
139
+ # * `~/.aws/credentials`
140
+ # * `~/.aws/config`
141
+ #
142
+ # @option options [String] :access_key_id
143
+ #
144
+ # @option options [Boolean] :active_endpoint_cache (false)
145
+ # When set to `true`, a thread polling for endpoints will be running in
146
+ # the background every 60 secs (default). Defaults to `false`.
147
+ #
148
+ # @option options [Boolean] :adaptive_retry_wait_to_fill (true)
149
+ # Used only in `adaptive` retry mode. When true, the request will sleep
150
+ # until there is sufficent client side capacity to retry the request.
151
+ # When false, the request will raise a `RetryCapacityNotAvailableError` and will
152
+ # not retry instead of sleeping.
153
+ #
154
+ # @option options [Boolean] :client_side_monitoring (false)
155
+ # When `true`, client-side metrics will be collected for all API requests from
156
+ # this client.
157
+ #
158
+ # @option options [String] :client_side_monitoring_client_id ("")
159
+ # Allows you to provide an identifier for this client which will be attached to
160
+ # all generated client side metrics. Defaults to an empty string.
161
+ #
162
+ # @option options [String] :client_side_monitoring_host ("127.0.0.1")
163
+ # Allows you to specify the DNS hostname or IPv4 or IPv6 address that the client
164
+ # side monitoring agent is running on, where client metrics will be published via UDP.
165
+ #
166
+ # @option options [Integer] :client_side_monitoring_port (31000)
167
+ # Required for publishing client metrics. The port that the client side monitoring
168
+ # agent is running on, where client metrics will be published via UDP.
169
+ #
170
+ # @option options [Aws::ClientSideMonitoring::Publisher] :client_side_monitoring_publisher (Aws::ClientSideMonitoring::Publisher)
171
+ # Allows you to provide a custom client-side monitoring publisher class. By default,
172
+ # will use the Client Side Monitoring Agent Publisher.
173
+ #
174
+ # @option options [Boolean] :convert_params (true)
175
+ # When `true`, an attempt is made to coerce request parameters into
176
+ # the required types.
177
+ #
178
+ # @option options [Boolean] :correct_clock_skew (true)
179
+ # Used only in `standard` and adaptive retry modes. Specifies whether to apply
180
+ # a clock skew correction and retry requests with skewed client clocks.
181
+ #
182
+ # @option options [String] :defaults_mode ("legacy")
183
+ # See {Aws::DefaultsModeConfiguration} for a list of the
184
+ # accepted modes and the configuration defaults that are included.
185
+ #
186
+ # @option options [Boolean] :disable_host_prefix_injection (false)
187
+ # Set to true to disable SDK automatically adding host prefix
188
+ # to default service endpoint when available.
189
+ #
190
+ # @option options [String] :endpoint
191
+ # The client endpoint is normally constructed from the `:region`
192
+ # option. You should only configure an `:endpoint` when connecting
193
+ # to test or custom endpoints. This should be a valid HTTP(S) URI.
194
+ #
195
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
196
+ # Used for the maximum size limit of the LRU cache storing endpoints data
197
+ # for endpoint discovery enabled operations. Defaults to 1000.
198
+ #
199
+ # @option options [Integer] :endpoint_cache_max_threads (10)
200
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
201
+ #
202
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
203
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
204
+ # Use this option to config the time interval in seconds for making
205
+ # requests fetching endpoints information. Defaults to 60 sec.
206
+ #
207
+ # @option options [Boolean] :endpoint_discovery (false)
208
+ # When set to `true`, endpoint discovery will be enabled for operations when available.
209
+ #
210
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
211
+ # The log formatter.
212
+ #
213
+ # @option options [Symbol] :log_level (:info)
214
+ # The log level to send messages to the `:logger` at.
215
+ #
216
+ # @option options [Logger] :logger
217
+ # The Logger instance to send log messages to. If this option
218
+ # is not set, logging will be disabled.
219
+ #
220
+ # @option options [Integer] :max_attempts (3)
221
+ # An integer representing the maximum number attempts that will be made for
222
+ # a single request, including the initial attempt. For example,
223
+ # setting this value to 5 will result in a request being retried up to
224
+ # 4 times. Used in `standard` and `adaptive` retry modes.
225
+ #
226
+ # @option options [String] :profile ("default")
227
+ # Used when loading credentials from the shared credentials file
228
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
229
+ #
230
+ # @option options [Proc] :retry_backoff
231
+ # A proc or lambda used for backoff. Defaults to 2**retries * retry_base_delay.
232
+ # This option is only used in the `legacy` retry mode.
233
+ #
234
+ # @option options [Float] :retry_base_delay (0.3)
235
+ # The base delay in seconds used by the default backoff function. This option
236
+ # is only used in the `legacy` retry mode.
237
+ #
238
+ # @option options [Symbol] :retry_jitter (:none)
239
+ # A delay randomiser function used by the default backoff function.
240
+ # Some predefined functions can be referenced by name - :none, :equal, :full,
241
+ # otherwise a Proc that takes and returns a number. This option is only used
242
+ # in the `legacy` retry mode.
243
+ #
244
+ # @see https://www.awsarchitectureblog.com/2015/03/backoff.html
245
+ #
246
+ # @option options [Integer] :retry_limit (3)
247
+ # The maximum number of times to retry failed requests. Only
248
+ # ~ 500 level server errors and certain ~ 400 level client errors
249
+ # are retried. Generally, these are throttling errors, data
250
+ # checksum errors, networking errors, timeout errors, auth errors,
251
+ # endpoint discovery, and errors from expired credentials.
252
+ # This option is only used in the `legacy` retry mode.
253
+ #
254
+ # @option options [Integer] :retry_max_delay (0)
255
+ # The maximum number of seconds to delay between retries (0 for no limit)
256
+ # used by the default backoff function. This option is only used in the
257
+ # `legacy` retry mode.
258
+ #
259
+ # @option options [String] :retry_mode ("legacy")
260
+ # Specifies which retry algorithm to use. Values are:
261
+ #
262
+ # * `legacy` - The pre-existing retry behavior. This is default value if
263
+ # no retry mode is provided.
264
+ #
265
+ # * `standard` - A standardized set of retry rules across the AWS SDKs.
266
+ # This includes support for retry quotas, which limit the number of
267
+ # unsuccessful retries a client can make.
268
+ #
269
+ # * `adaptive` - An experimental retry mode that includes all the
270
+ # functionality of `standard` mode along with automatic client side
271
+ # throttling. This is a provisional mode that may change behavior
272
+ # in the future.
273
+ #
274
+ #
275
+ # @option options [String] :secret_access_key
276
+ #
277
+ # @option options [String] :session_token
278
+ #
279
+ # @option options [Boolean] :stub_responses (false)
280
+ # Causes the client to return stubbed responses. By default
281
+ # fake responses are generated and returned. You can specify
282
+ # the response data to return or errors to raise by calling
283
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
284
+ #
285
+ # ** Please note ** When response stubbing is enabled, no HTTP
286
+ # requests are made, and retries are disabled.
287
+ #
288
+ # @option options [Boolean] :use_dualstack_endpoint
289
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
290
+ # will be used if available.
291
+ #
292
+ # @option options [Boolean] :use_fips_endpoint
293
+ # When set to `true`, fips compatible endpoints will be used if available.
294
+ # When a `fips` region is used, the region is normalized and this config
295
+ # is set to `true`.
296
+ #
297
+ # @option options [Boolean] :validate_params (true)
298
+ # When `true`, request parameters are validated before
299
+ # sending the request.
300
+ #
301
+ # @option options [URI::HTTP,String] :http_proxy A proxy to send
302
+ # requests through. Formatted like 'http://proxy.com:123'.
303
+ #
304
+ # @option options [Float] :http_open_timeout (15) The number of
305
+ # seconds to wait when opening a HTTP session before raising a
306
+ # `Timeout::Error`.
307
+ #
308
+ # @option options [Float] :http_read_timeout (60) The default
309
+ # number of seconds to wait for response data. This value can
310
+ # safely be set per-request on the session.
311
+ #
312
+ # @option options [Float] :http_idle_timeout (5) The number of
313
+ # seconds a connection is allowed to sit idle before it is
314
+ # considered stale. Stale connections are closed and removed
315
+ # from the pool before making a request.
316
+ #
317
+ # @option options [Float] :http_continue_timeout (1) The number of
318
+ # seconds to wait for a 100-continue response before sending the
319
+ # request body. This option has no effect unless the request has
320
+ # "Expect" header set to "100-continue". Defaults to `nil` which
321
+ # disables this behaviour. This value can safely be set per
322
+ # request on the session.
323
+ #
324
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
325
+ # in seconds.
326
+ #
327
+ # @option options [Boolean] :http_wire_trace (false) When `true`,
328
+ # HTTP debug output will be sent to the `:logger`.
329
+ #
330
+ # @option options [Boolean] :ssl_verify_peer (true) When `true`,
331
+ # SSL peer certificates are verified when establishing a
332
+ # connection.
333
+ #
334
+ # @option options [String] :ssl_ca_bundle Full path to the SSL
335
+ # certificate authority bundle file that should be used when
336
+ # verifying peer certificates. If you do not pass
337
+ # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
338
+ # will be used if available.
339
+ #
340
+ # @option options [String] :ssl_ca_directory Full path of the
341
+ # directory that contains the unbundled SSL certificate
342
+ # authority files for verifying peer certificates. If you do
343
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
344
+ # system default will be used if available.
345
+ #
346
+ def initialize(*args)
347
+ super
348
+ end
349
+
350
+ # @!group API Operations
351
+
352
+ # Returns the STS short-term credentials for a given role name that is
353
+ # assigned to the user.
354
+ #
355
+ # @option params [required, String] :role_name
356
+ # The friendly name of the role that is assigned to the user.
357
+ #
358
+ # @option params [required, String] :account_id
359
+ # The identifier for the AWS account that is assigned to the user.
360
+ #
361
+ # @option params [required, String] :access_token
362
+ # The token issued by the `CreateToken` API call. For more information,
363
+ # see [CreateToken][1] in the *AWS SSO OIDC API Reference Guide*.
364
+ #
365
+ #
366
+ #
367
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateToken.html
368
+ #
369
+ # @return [Types::GetRoleCredentialsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
370
+ #
371
+ # * {Types::GetRoleCredentialsResponse#role_credentials #role_credentials} => Types::RoleCredentials
372
+ #
373
+ # @example Request syntax with placeholder values
374
+ #
375
+ # resp = client.get_role_credentials({
376
+ # role_name: "RoleNameType", # required
377
+ # account_id: "AccountIdType", # required
378
+ # access_token: "AccessTokenType", # required
379
+ # })
380
+ #
381
+ # @example Response structure
382
+ #
383
+ # resp.role_credentials.access_key_id #=> String
384
+ # resp.role_credentials.secret_access_key #=> String
385
+ # resp.role_credentials.session_token #=> String
386
+ # resp.role_credentials.expiration #=> Integer
387
+ #
388
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-2019-06-10/GetRoleCredentials AWS API Documentation
389
+ #
390
+ # @overload get_role_credentials(params = {})
391
+ # @param [Hash] params ({})
392
+ def get_role_credentials(params = {}, options = {})
393
+ req = build_request(:get_role_credentials, params)
394
+ req.send_request(options)
395
+ end
396
+
397
+ # Lists all roles that are assigned to the user for a given AWS account.
398
+ #
399
+ # @option params [String] :next_token
400
+ # The page token from the previous response output when you request
401
+ # subsequent pages.
402
+ #
403
+ # @option params [Integer] :max_results
404
+ # The number of items that clients can request per page.
405
+ #
406
+ # @option params [required, String] :access_token
407
+ # The token issued by the `CreateToken` API call. For more information,
408
+ # see [CreateToken][1] in the *AWS SSO OIDC API Reference Guide*.
409
+ #
410
+ #
411
+ #
412
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateToken.html
413
+ #
414
+ # @option params [required, String] :account_id
415
+ # The identifier for the AWS account that is assigned to the user.
416
+ #
417
+ # @return [Types::ListAccountRolesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
418
+ #
419
+ # * {Types::ListAccountRolesResponse#next_token #next_token} => String
420
+ # * {Types::ListAccountRolesResponse#role_list #role_list} => Array&lt;Types::RoleInfo&gt;
421
+ #
422
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
423
+ #
424
+ # @example Request syntax with placeholder values
425
+ #
426
+ # resp = client.list_account_roles({
427
+ # next_token: "NextTokenType",
428
+ # max_results: 1,
429
+ # access_token: "AccessTokenType", # required
430
+ # account_id: "AccountIdType", # required
431
+ # })
432
+ #
433
+ # @example Response structure
434
+ #
435
+ # resp.next_token #=> String
436
+ # resp.role_list #=> Array
437
+ # resp.role_list[0].role_name #=> String
438
+ # resp.role_list[0].account_id #=> String
439
+ #
440
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-2019-06-10/ListAccountRoles AWS API Documentation
441
+ #
442
+ # @overload list_account_roles(params = {})
443
+ # @param [Hash] params ({})
444
+ def list_account_roles(params = {}, options = {})
445
+ req = build_request(:list_account_roles, params)
446
+ req.send_request(options)
447
+ end
448
+
449
+ # Lists all AWS accounts assigned to the user. These AWS accounts are
450
+ # assigned by the administrator of the account. For more information,
451
+ # see [Assign User Access][1] in the *AWS SSO User Guide*. This
452
+ # operation returns a paginated response.
453
+ #
454
+ #
455
+ #
456
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/userguide/useraccess.html#assignusers
457
+ #
458
+ # @option params [String] :next_token
459
+ # (Optional) When requesting subsequent pages, this is the page token
460
+ # from the previous response output.
461
+ #
462
+ # @option params [Integer] :max_results
463
+ # This is the number of items clients can request per page.
464
+ #
465
+ # @option params [required, String] :access_token
466
+ # The token issued by the `CreateToken` API call. For more information,
467
+ # see [CreateToken][1] in the *AWS SSO OIDC API Reference Guide*.
468
+ #
469
+ #
470
+ #
471
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateToken.html
472
+ #
473
+ # @return [Types::ListAccountsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
474
+ #
475
+ # * {Types::ListAccountsResponse#next_token #next_token} => String
476
+ # * {Types::ListAccountsResponse#account_list #account_list} => Array&lt;Types::AccountInfo&gt;
477
+ #
478
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
479
+ #
480
+ # @example Request syntax with placeholder values
481
+ #
482
+ # resp = client.list_accounts({
483
+ # next_token: "NextTokenType",
484
+ # max_results: 1,
485
+ # access_token: "AccessTokenType", # required
486
+ # })
487
+ #
488
+ # @example Response structure
489
+ #
490
+ # resp.next_token #=> String
491
+ # resp.account_list #=> Array
492
+ # resp.account_list[0].account_id #=> String
493
+ # resp.account_list[0].account_name #=> String
494
+ # resp.account_list[0].email_address #=> String
495
+ #
496
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-2019-06-10/ListAccounts AWS API Documentation
497
+ #
498
+ # @overload list_accounts(params = {})
499
+ # @param [Hash] params ({})
500
+ def list_accounts(params = {}, options = {})
501
+ req = build_request(:list_accounts, params)
502
+ req.send_request(options)
503
+ end
504
+
505
+ # Removes the client- and server-side session that is associated with
506
+ # the user.
507
+ #
508
+ # @option params [required, String] :access_token
509
+ # The token issued by the `CreateToken` API call. For more information,
510
+ # see [CreateToken][1] in the *AWS SSO OIDC API Reference Guide*.
511
+ #
512
+ #
513
+ #
514
+ # [1]: https://docs.aws.amazon.com/singlesignon/latest/OIDCAPIReference/API_CreateToken.html
515
+ #
516
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
517
+ #
518
+ # @example Request syntax with placeholder values
519
+ #
520
+ # resp = client.logout({
521
+ # access_token: "AccessTokenType", # required
522
+ # })
523
+ #
524
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sso-2019-06-10/Logout AWS API Documentation
525
+ #
526
+ # @overload logout(params = {})
527
+ # @param [Hash] params ({})
528
+ def logout(params = {}, options = {})
529
+ req = build_request(:logout, params)
530
+ req.send_request(options)
531
+ end
532
+
533
+ # @!endgroup
534
+
535
+ # @param params ({})
536
+ # @api private
537
+ def build_request(operation_name, params = {})
538
+ handlers = @handlers.for(operation_name)
539
+ context = Seahorse::Client::RequestContext.new(
540
+ operation_name: operation_name,
541
+ operation: config.api.operation(operation_name),
542
+ client: self,
543
+ params: params,
544
+ config: config)
545
+ context[:gem_name] = 'aws-sdk-core'
546
+ context[:gem_version] = '3.126.2'
547
+ Seahorse::Client::Request.new(handlers, context)
548
+ end
549
+
550
+ # @api private
551
+ # @deprecated
552
+ def waiter_names
553
+ []
554
+ end
555
+
556
+ class << self
557
+
558
+ # @api private
559
+ attr_reader :identifier
560
+
561
+ # @api private
562
+ def errors_module
563
+ Errors
564
+ end
565
+
566
+ end
567
+ end
568
+ end