aws-sdk-core 3.52.1 → 3.53.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5047f188380aa06a4353571341afff949a66b441
4
- data.tar.gz: f335a1863e7c60c8efb2f168b787cf79e3e92719
3
+ metadata.gz: 12a3acaaa552c67589158ad8750e15e80a50c786
4
+ data.tar.gz: 569b8e22032a312a999a4fd821dcc0ba3f1b8297
5
5
  SHA512:
6
- metadata.gz: b75e2336c64633bf18451fb0b41457f625390fe7a66f20f52906164f156ab1e54aa4d210bd26f584f491c4b92309b49d523ae348c4c0cab3be774cdd514155d3
7
- data.tar.gz: ab92ad5c80f4b952c52a23a1cc8bb71d8620136a0e65d26531b96f9f9fe72e89c2f66e25b92cfb33c14bcdf0c3ea225f8d003e25ccd1d5554a1b6de759f3eccc
6
+ metadata.gz: 07eb6ccb6212453ec6d3da728b6785f6acefb0d3d9a8ff29e634362ba411469f256066a82faea63d86f9b6d8e7d0c48c452c1f35bd7b90da82aa5af2aac1e873
7
+ data.tar.gz: ea90e45222ab23efb7bf401403ab6567bd9aa5bc0583870341520cc471221b7838f9eda14c1005f1405ce196f40ed4b391d93e3b849fbd348938a5fdb1915446
data/VERSION CHANGED
@@ -1 +1 @@
1
- 3.52.1
1
+ 3.53.0
@@ -13,9 +13,12 @@ module Aws
13
13
 
14
14
  # @param [Seahorse::Client::RequestContext] context
15
15
  # @param [String] message
16
- def initialize(context, message)
16
+ # @param [Aws::Structure] data
17
+ def initialize(context, message, data = Aws::EmptyStructure.new)
17
18
  @code = self.class.code
19
+ @message = message if message && !message.empty?
18
20
  @context = context
21
+ @data = data
19
22
  super(message)
20
23
  end
21
24
 
@@ -26,6 +29,9 @@ module Aws
26
29
  # that triggered the remote service to return this error.
27
30
  attr_reader :context
28
31
 
32
+ # @return [Aws::Structure]
33
+ attr_reader :data
34
+
29
35
  class << self
30
36
 
31
37
  # @return [String]
@@ -240,7 +246,11 @@ Known AWS regions include (not specific to this service):
240
246
  def error_class(error_code)
241
247
  constant = error_class_constant(error_code)
242
248
  if error_const_set?(constant)
243
- const_get(constant)
249
+ # modeled error class exist
250
+ # set code attribute
251
+ err_class = const_get(constant)
252
+ err_class.code = constant.to_s
253
+ err_class
244
254
  else
245
255
  set_error_constant(constant)
246
256
  end
@@ -17,9 +17,10 @@ module Aws
17
17
  json = Json.load(body)
18
18
  code = error_code(json, context)
19
19
  message = error_message(code, json)
20
- [code, message]
20
+ data = parse_error_data(context, code)
21
+ [code, message, data]
21
22
  rescue Json::ParseError
22
- [http_status_error_code(context), '']
23
+ [http_status_error_code(context), '', EmptyStructure.new]
23
24
  end
24
25
 
25
26
  def error_code(json, context)
@@ -41,6 +42,22 @@ module Aws
41
42
  end
42
43
  end
43
44
 
45
+ def parse_error_data(context, code)
46
+ data = EmptyStructure.new
47
+ if error_rules = context.operation.errors
48
+ error_rules.each do |rule|
49
+ # match modeled shape name with the type(code) only
50
+ # some type(code) might contains invalid characters
51
+ # such as ':' (efs) etc
52
+ match = rule.shape.name == code.gsub(/[^^a-zA-Z0-9]/, '')
53
+ if match && rule.shape.members.any?
54
+ data = Parser.new(rule).parse(context.http_response.body_contents)
55
+ end
56
+ end
57
+ end
58
+ data
59
+ end
60
+
44
61
  end
45
62
  end
46
63
  end
@@ -11,7 +11,7 @@ module Aws
11
11
  #
12
12
  # @api private
13
13
  # begin
14
- SENSITIVE = [:access_token, :account_name, :account_password, :address, :admin_contact, :admin_password, :artifact_credentials, :auth_code, :authentication_token, :authorization_result, :backup_plan_tags, :backup_vault_tags, :base_32_string_seed, :body, :bot_configuration, :bot_email, :cause, :client_id, :client_secret, :configuration, :copy_source_sse_customer_key, :credentials, :custom_attributes, :db_password, :default_phone_number, :definition, :description, :display_name, :e164_phone_number, :email, :email_address, :email_message, :embed_url, :error, :feedback_token, :file, :first_name, :id, :id_token, :input, :input_text, :key_id, :key_store_password, :kms_key_id, :kms_master_key_id, :lambda_function_arn, :last_name, :local_console_password, :master_account_email, :master_user_password, :message, :name, :new_password, :notes, :old_password, :outbound_events_https_endpoint, :output, :owner_information, :parameters, :passphrase, :password, :payload, :phone_number, :plaintext, :previous_password, :primary_email, :primary_provisioned_number, :private_key, :proposed_password, :public_key, :qr_code_png, :query, :recovery_point_tags, :refresh_token, :registrant_contact, :request_attributes, :search_query, :secret_access_key, :secret_binary, :secret_code, :secret_hash, :secret_string, :security_token, :service_password, :session_attributes, :share_notes, :shared_secret, :slots, :sse_customer_key, :ssekms_key_id, :status_message, :tag_key_list, :tags, :task_parameters, :tech_contact, :temporary_password, :text, :token, :trust_password, :upload_credentials, :upload_url, :user_email, :user_name, :username, :value, :values, :variables, :zip_file]
14
+ SENSITIVE = [:access_token, :account_name, :account_password, :address, :admin_contact, :admin_password, :artifact_credentials, :auth_code, :authentication_token, :authorization_result, :backup_plan_tags, :backup_vault_tags, :base_32_string_seed, :body, :bot_configuration, :bot_email, :cause, :client_id, :client_secret, :configuration, :copy_source_sse_customer_key, :credentials, :current_password, :custom_attributes, :db_password, :default_phone_number, :definition, :description, :display_name, :e164_phone_number, :email, :email_address, :email_message, :embed_url, :error, :feedback_token, :file, :first_name, :id, :id_token, :input, :input_text, :key_id, :key_store_password, :kms_key_id, :kms_master_key_id, :lambda_function_arn, :last_name, :local_console_password, :master_account_email, :master_user_password, :message, :name, :new_password, :next_password, :notes, :old_password, :outbound_events_https_endpoint, :output, :owner_information, :parameters, :passphrase, :password, :payload, :phone_number, :plaintext, :previous_password, :primary_email, :primary_provisioned_number, :private_key, :proposed_password, :public_key, :qr_code_png, :query, :recovery_point_tags, :refresh_token, :registrant_contact, :request_attributes, :search_query, :secret_access_key, :secret_binary, :secret_code, :secret_hash, :secret_string, :security_token, :service_password, :session_attributes, :share_notes, :shared_secret, :slots, :sse_customer_key, :ssekms_key_id, :status_message, :tag_key_list, :tags, :task_parameters, :tech_contact, :temporary_password, :text, :token, :trust_password, :upload_credentials, :upload_url, :user_email, :user_name, :username, :value, :values, :variables, :zip_file]
15
15
  # end
16
16
 
17
17
  def initialize(options = {})
@@ -18,20 +18,43 @@ module Aws
18
18
  if body.empty?
19
19
  code = http_status_error_code(context)
20
20
  message = ''
21
+ data = EmptyStructure.new
21
22
  else
22
- code, message = extract_error(body, context)
23
+ code, message, data = extract_error(body, context)
23
24
  end
24
25
  errors_module = context.client.class.errors_module
25
- errors_module.error_class(code).new(context, message)
26
+ error_class = errors_module.error_class(code).new(context, message, data)
27
+ error_class
26
28
  end
27
29
 
28
30
  def extract_error(body, context)
31
+ code = error_code(body, context)
29
32
  [
30
- error_code(body, context),
33
+ code,
31
34
  error_message(body),
35
+ error_data(context, code)
32
36
  ]
33
37
  end
34
38
 
39
+ def error_data(context, code)
40
+ data = EmptyStructure.new
41
+ if error_rules = context.operation.errors
42
+ error_rules.each do |rule|
43
+ # for modeled shape with error trait
44
+ # match `code` in the error trait before
45
+ # match modeled shape name
46
+ error_shape_code = rule.shape['error']['code'] if rule.shape['error']
47
+ match = (code == error_shape_code || code == rule.shape.name)
48
+ if match && rule.shape.members.any?
49
+ data = Parser.new(rule).parse(context.http_response.body_contents)
50
+ end
51
+ end
52
+ end
53
+ data
54
+ rescue Xml::Parser::ParsingError
55
+ EmptyStructure.new
56
+ end
57
+
35
58
  def error_code(body, context)
36
59
  if matches = body.match(/<Code>(.+?)<\/Code>/)
37
60
  remove_prefix(unescape(matches[1]), context)
@@ -40,6 +40,6 @@ require_relative 'aws-sdk-sts/customizations'
40
40
  # @service
41
41
  module Aws::STS
42
42
 
43
- GEM_VERSION = '3.52.1'
43
+ GEM_VERSION = '3.53.0'
44
44
 
45
45
  end
@@ -1736,7 +1736,7 @@ module Aws::STS
1736
1736
  params: params,
1737
1737
  config: config)
1738
1738
  context[:gem_name] = 'aws-sdk-core'
1739
- context[:gem_version] = '3.52.1'
1739
+ context[:gem_version] = '3.53.0'
1740
1740
  Seahorse::Client::Request.new(handlers, context)
1741
1741
  end
1742
1742
 
@@ -142,6 +142,9 @@ module Aws::STS
142
142
  DecodeAuthorizationMessageResponse.add_member(:decoded_message, Shapes::ShapeRef.new(shape: decodedMessageType, location_name: "DecodedMessage"))
143
143
  DecodeAuthorizationMessageResponse.struct_class = Types::DecodeAuthorizationMessageResponse
144
144
 
145
+ ExpiredTokenException.add_member(:message, Shapes::ShapeRef.new(shape: expiredIdentityTokenMessage, location_name: "message"))
146
+ ExpiredTokenException.struct_class = Types::ExpiredTokenException
147
+
145
148
  FederatedUser.add_member(:federated_user_id, Shapes::ShapeRef.new(shape: federatedIdType, required: true, location_name: "FederatedUserId"))
146
149
  FederatedUser.add_member(:arn, Shapes::ShapeRef.new(shape: arnType, required: true, location_name: "Arn"))
147
150
  FederatedUser.struct_class = Types::FederatedUser
@@ -172,9 +175,30 @@ module Aws::STS
172
175
  GetSessionTokenResponse.add_member(:credentials, Shapes::ShapeRef.new(shape: Credentials, location_name: "Credentials"))
173
176
  GetSessionTokenResponse.struct_class = Types::GetSessionTokenResponse
174
177
 
178
+ IDPCommunicationErrorException.add_member(:message, Shapes::ShapeRef.new(shape: idpCommunicationErrorMessage, location_name: "message"))
179
+ IDPCommunicationErrorException.struct_class = Types::IDPCommunicationErrorException
180
+
181
+ IDPRejectedClaimException.add_member(:message, Shapes::ShapeRef.new(shape: idpRejectedClaimMessage, location_name: "message"))
182
+ IDPRejectedClaimException.struct_class = Types::IDPRejectedClaimException
183
+
184
+ InvalidAuthorizationMessageException.add_member(:message, Shapes::ShapeRef.new(shape: invalidAuthorizationMessage, location_name: "message"))
185
+ InvalidAuthorizationMessageException.struct_class = Types::InvalidAuthorizationMessageException
186
+
187
+ InvalidIdentityTokenException.add_member(:message, Shapes::ShapeRef.new(shape: invalidIdentityTokenMessage, location_name: "message"))
188
+ InvalidIdentityTokenException.struct_class = Types::InvalidIdentityTokenException
189
+
190
+ MalformedPolicyDocumentException.add_member(:message, Shapes::ShapeRef.new(shape: malformedPolicyDocumentMessage, location_name: "message"))
191
+ MalformedPolicyDocumentException.struct_class = Types::MalformedPolicyDocumentException
192
+
193
+ PackedPolicyTooLargeException.add_member(:message, Shapes::ShapeRef.new(shape: packedPolicyTooLargeMessage, location_name: "message"))
194
+ PackedPolicyTooLargeException.struct_class = Types::PackedPolicyTooLargeException
195
+
175
196
  PolicyDescriptorType.add_member(:arn, Shapes::ShapeRef.new(shape: arnType, location_name: "arn"))
176
197
  PolicyDescriptorType.struct_class = Types::PolicyDescriptorType
177
198
 
199
+ RegionDisabledException.add_member(:message, Shapes::ShapeRef.new(shape: regionDisabledMessage, location_name: "message"))
200
+ RegionDisabledException.struct_class = Types::RegionDisabledException
201
+
178
202
  policyDescriptorListType.member = Shapes::ShapeRef.new(shape: PolicyDescriptorType)
179
203
 
180
204
 
@@ -10,5 +10,133 @@ module Aws::STS
10
10
 
11
11
  extend Aws::Errors::DynamicErrors
12
12
 
13
+ class ExpiredTokenException < ServiceError
14
+
15
+ # @param [Seahorse::Client::RequestContext] context
16
+ # @param [String] message
17
+ # @param [Aws::STS::Types::ExpiredTokenException] data
18
+ def initialize(context, message, data = Aws::EmptyStructure.new)
19
+ super(context, message, data)
20
+ end
21
+
22
+ # @return [String]
23
+ def message
24
+ @message || @data[:message]
25
+ end
26
+
27
+ end
28
+
29
+ class IDPCommunicationErrorException < ServiceError
30
+
31
+ # @param [Seahorse::Client::RequestContext] context
32
+ # @param [String] message
33
+ # @param [Aws::STS::Types::IDPCommunicationErrorException] data
34
+ def initialize(context, message, data = Aws::EmptyStructure.new)
35
+ super(context, message, data)
36
+ end
37
+
38
+ # @return [String]
39
+ def message
40
+ @message || @data[:message]
41
+ end
42
+
43
+ end
44
+
45
+ class IDPRejectedClaimException < ServiceError
46
+
47
+ # @param [Seahorse::Client::RequestContext] context
48
+ # @param [String] message
49
+ # @param [Aws::STS::Types::IDPRejectedClaimException] data
50
+ def initialize(context, message, data = Aws::EmptyStructure.new)
51
+ super(context, message, data)
52
+ end
53
+
54
+ # @return [String]
55
+ def message
56
+ @message || @data[:message]
57
+ end
58
+
59
+ end
60
+
61
+ class InvalidAuthorizationMessageException < ServiceError
62
+
63
+ # @param [Seahorse::Client::RequestContext] context
64
+ # @param [String] message
65
+ # @param [Aws::STS::Types::InvalidAuthorizationMessageException] data
66
+ def initialize(context, message, data = Aws::EmptyStructure.new)
67
+ super(context, message, data)
68
+ end
69
+
70
+ # @return [String]
71
+ def message
72
+ @message || @data[:message]
73
+ end
74
+
75
+ end
76
+
77
+ class InvalidIdentityTokenException < ServiceError
78
+
79
+ # @param [Seahorse::Client::RequestContext] context
80
+ # @param [String] message
81
+ # @param [Aws::STS::Types::InvalidIdentityTokenException] data
82
+ def initialize(context, message, data = Aws::EmptyStructure.new)
83
+ super(context, message, data)
84
+ end
85
+
86
+ # @return [String]
87
+ def message
88
+ @message || @data[:message]
89
+ end
90
+
91
+ end
92
+
93
+ class MalformedPolicyDocumentException < ServiceError
94
+
95
+ # @param [Seahorse::Client::RequestContext] context
96
+ # @param [String] message
97
+ # @param [Aws::STS::Types::MalformedPolicyDocumentException] data
98
+ def initialize(context, message, data = Aws::EmptyStructure.new)
99
+ super(context, message, data)
100
+ end
101
+
102
+ # @return [String]
103
+ def message
104
+ @message || @data[:message]
105
+ end
106
+
107
+ end
108
+
109
+ class PackedPolicyTooLargeException < ServiceError
110
+
111
+ # @param [Seahorse::Client::RequestContext] context
112
+ # @param [String] message
113
+ # @param [Aws::STS::Types::PackedPolicyTooLargeException] data
114
+ def initialize(context, message, data = Aws::EmptyStructure.new)
115
+ super(context, message, data)
116
+ end
117
+
118
+ # @return [String]
119
+ def message
120
+ @message || @data[:message]
121
+ end
122
+
123
+ end
124
+
125
+ class RegionDisabledException < ServiceError
126
+
127
+ # @param [Seahorse::Client::RequestContext] context
128
+ # @param [String] message
129
+ # @param [Aws::STS::Types::RegionDisabledException] data
130
+ def initialize(context, message, data = Aws::EmptyStructure.new)
131
+ super(context, message, data)
132
+ end
133
+
134
+ # @return [String]
135
+ def message
136
+ @message || @data[:message]
137
+ end
138
+
139
+ end
140
+
13
141
  end
14
142
  end
@@ -808,6 +808,20 @@ module Aws::STS
808
808
  include Aws::Structure
809
809
  end
810
810
 
811
+ # The web identity token that was passed is expired or is not valid. Get
812
+ # a new identity token from the identity provider and then retry the
813
+ # request.
814
+ #
815
+ # @!attribute [rw] message
816
+ # @return [String]
817
+ #
818
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15/ExpiredTokenException AWS API Documentation
819
+ #
820
+ class ExpiredTokenException < Struct.new(
821
+ :message)
822
+ include Aws::Structure
823
+ end
824
+
811
825
  # Identifiers for the federated user that is associated with the
812
826
  # credentials.
813
827
  #
@@ -1127,6 +1141,95 @@ module Aws::STS
1127
1141
  include Aws::Structure
1128
1142
  end
1129
1143
 
1144
+ # The request could not be fulfilled because the non-AWS identity
1145
+ # provider (IDP) that was asked to verify the incoming identity token
1146
+ # could not be reached. This is often a transient error caused by
1147
+ # network conditions. Retry the request a limited number of times so
1148
+ # that you don't exceed the request rate. If the error persists, the
1149
+ # non-AWS identity provider might be down or not responding.
1150
+ #
1151
+ # @!attribute [rw] message
1152
+ # @return [String]
1153
+ #
1154
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15/IDPCommunicationErrorException AWS API Documentation
1155
+ #
1156
+ class IDPCommunicationErrorException < Struct.new(
1157
+ :message)
1158
+ include Aws::Structure
1159
+ end
1160
+
1161
+ # The identity provider (IdP) reported that authentication failed. This
1162
+ # might be because the claim is invalid.
1163
+ #
1164
+ # If this error is returned for the `AssumeRoleWithWebIdentity`
1165
+ # operation, it can also mean that the claim has expired or has been
1166
+ # explicitly revoked.
1167
+ #
1168
+ # @!attribute [rw] message
1169
+ # @return [String]
1170
+ #
1171
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15/IDPRejectedClaimException AWS API Documentation
1172
+ #
1173
+ class IDPRejectedClaimException < Struct.new(
1174
+ :message)
1175
+ include Aws::Structure
1176
+ end
1177
+
1178
+ # The error returned if the message passed to
1179
+ # `DecodeAuthorizationMessage` was invalid. This can happen if the token
1180
+ # contains invalid characters, such as linebreaks.
1181
+ #
1182
+ # @!attribute [rw] message
1183
+ # @return [String]
1184
+ #
1185
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15/InvalidAuthorizationMessageException AWS API Documentation
1186
+ #
1187
+ class InvalidAuthorizationMessageException < Struct.new(
1188
+ :message)
1189
+ include Aws::Structure
1190
+ end
1191
+
1192
+ # The web identity token that was passed could not be validated by AWS.
1193
+ # Get a new identity token from the identity provider and then retry the
1194
+ # request.
1195
+ #
1196
+ # @!attribute [rw] message
1197
+ # @return [String]
1198
+ #
1199
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15/InvalidIdentityTokenException AWS API Documentation
1200
+ #
1201
+ class InvalidIdentityTokenException < Struct.new(
1202
+ :message)
1203
+ include Aws::Structure
1204
+ end
1205
+
1206
+ # The request was rejected because the policy document was malformed.
1207
+ # The error message describes the specific error.
1208
+ #
1209
+ # @!attribute [rw] message
1210
+ # @return [String]
1211
+ #
1212
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15/MalformedPolicyDocumentException AWS API Documentation
1213
+ #
1214
+ class MalformedPolicyDocumentException < Struct.new(
1215
+ :message)
1216
+ include Aws::Structure
1217
+ end
1218
+
1219
+ # The request was rejected because the policy document was too large.
1220
+ # The error message describes how big the policy document is, in packed
1221
+ # form, as a percentage of what the API allows.
1222
+ #
1223
+ # @!attribute [rw] message
1224
+ # @return [String]
1225
+ #
1226
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15/PackedPolicyTooLargeException AWS API Documentation
1227
+ #
1228
+ class PackedPolicyTooLargeException < Struct.new(
1229
+ :message)
1230
+ include Aws::Structure
1231
+ end
1232
+
1130
1233
  # A reference to the IAM managed policy that is passed as a session
1131
1234
  # policy for a role session or a federated user session.
1132
1235
  #
@@ -1152,5 +1255,25 @@ module Aws::STS
1152
1255
  include Aws::Structure
1153
1256
  end
1154
1257
 
1258
+ # STS is not activated in the requested region for the account that is
1259
+ # being asked to generate credentials. The account administrator must
1260
+ # use the IAM console to activate STS in that region. For more
1261
+ # information, see [Activating and Deactivating AWS STS in an AWS
1262
+ # Region][1] in the *IAM User Guide*.
1263
+ #
1264
+ #
1265
+ #
1266
+ # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html
1267
+ #
1268
+ # @!attribute [rw] message
1269
+ # @return [String]
1270
+ #
1271
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15/RegionDisabledException AWS API Documentation
1272
+ #
1273
+ class RegionDisabledException < Struct.new(
1274
+ :message)
1275
+ include Aws::Structure
1276
+ end
1277
+
1155
1278
  end
1156
1279
  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.52.1
4
+ version: 3.53.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-05-15 00:00:00.000000000 Z
11
+ date: 2019-05-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jmespath