aws-sdk-cognitoidentityprovider 1.31.0 → 1.36.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.
@@ -91,6 +91,7 @@ module Aws::CognitoIdentityProvider
91
91
  AuthEventsType = Shapes::ListShape.new(name: 'AuthEventsType')
92
92
  AuthFlowType = Shapes::StringShape.new(name: 'AuthFlowType')
93
93
  AuthParametersType = Shapes::MapShape.new(name: 'AuthParametersType')
94
+ AuthParametersValueType = Shapes::StringShape.new(name: 'AuthParametersValueType')
94
95
  AuthenticationResultType = Shapes::StructureShape.new(name: 'AuthenticationResultType')
95
96
  BlockedIPRangeListType = Shapes::ListShape.new(name: 'BlockedIPRangeListType')
96
97
  BooleanType = Shapes::BooleanShape.new(name: 'BooleanType')
@@ -445,6 +446,7 @@ module Aws::CognitoIdentityProvider
445
446
  UserType = Shapes::StructureShape.new(name: 'UserType')
446
447
  UsernameAttributeType = Shapes::StringShape.new(name: 'UsernameAttributeType')
447
448
  UsernameAttributesListType = Shapes::ListShape.new(name: 'UsernameAttributesListType')
449
+ UsernameConfigurationType = Shapes::StructureShape.new(name: 'UsernameConfigurationType')
448
450
  UsernameExistsException = Shapes::StructureShape.new(name: 'UsernameExistsException')
449
451
  UsernameType = Shapes::StringShape.new(name: 'UsernameType')
450
452
  UsersListType = Shapes::ListShape.new(name: 'UsersListType')
@@ -456,6 +458,7 @@ module Aws::CognitoIdentityProvider
456
458
  VerifySoftwareTokenResponseType = Shapes::StringShape.new(name: 'VerifySoftwareTokenResponseType')
457
459
  VerifyUserAttributeRequest = Shapes::StructureShape.new(name: 'VerifyUserAttributeRequest')
458
460
  VerifyUserAttributeResponse = Shapes::StructureShape.new(name: 'VerifyUserAttributeResponse')
461
+ WrappedBooleanType = Shapes::BooleanShape.new(name: 'WrappedBooleanType')
459
462
 
460
463
  AccountRecoverySettingType.add_member(:recovery_mechanisms, Shapes::ShapeRef.new(shape: RecoveryMechanismsType, location_name: "RecoveryMechanisms"))
461
464
  AccountRecoverySettingType.struct_class = Types::AccountRecoverySettingType
@@ -746,7 +749,7 @@ module Aws::CognitoIdentityProvider
746
749
  AuthEventsType.member = Shapes::ShapeRef.new(shape: AuthEventType)
747
750
 
748
751
  AuthParametersType.key = Shapes::ShapeRef.new(shape: StringType)
749
- AuthParametersType.value = Shapes::ShapeRef.new(shape: StringType)
752
+ AuthParametersType.value = Shapes::ShapeRef.new(shape: AuthParametersValueType)
750
753
 
751
754
  AuthenticationResultType.add_member(:access_token, Shapes::ShapeRef.new(shape: TokenModelType, location_name: "AccessToken"))
752
755
  AuthenticationResultType.add_member(:expires_in, Shapes::ShapeRef.new(shape: IntegerType, location_name: "ExpiresIn"))
@@ -933,6 +936,7 @@ module Aws::CognitoIdentityProvider
933
936
  CreateUserPoolRequest.add_member(:admin_create_user_config, Shapes::ShapeRef.new(shape: AdminCreateUserConfigType, location_name: "AdminCreateUserConfig"))
934
937
  CreateUserPoolRequest.add_member(:schema, Shapes::ShapeRef.new(shape: SchemaAttributesListType, location_name: "Schema"))
935
938
  CreateUserPoolRequest.add_member(:user_pool_add_ons, Shapes::ShapeRef.new(shape: UserPoolAddOnsType, location_name: "UserPoolAddOns"))
939
+ CreateUserPoolRequest.add_member(:username_configuration, Shapes::ShapeRef.new(shape: UsernameConfigurationType, location_name: "UsernameConfiguration"))
936
940
  CreateUserPoolRequest.add_member(:account_recovery_setting, Shapes::ShapeRef.new(shape: AccountRecoverySettingType, location_name: "AccountRecoverySetting"))
937
941
  CreateUserPoolRequest.struct_class = Types::CreateUserPoolRequest
938
942
 
@@ -1083,6 +1087,7 @@ module Aws::CognitoIdentityProvider
1083
1087
 
1084
1088
  EventRiskType.add_member(:risk_decision, Shapes::ShapeRef.new(shape: RiskDecisionType, location_name: "RiskDecision"))
1085
1089
  EventRiskType.add_member(:risk_level, Shapes::ShapeRef.new(shape: RiskLevelType, location_name: "RiskLevel"))
1090
+ EventRiskType.add_member(:compromised_credentials_detected, Shapes::ShapeRef.new(shape: WrappedBooleanType, location_name: "CompromisedCredentialsDetected"))
1086
1091
  EventRiskType.struct_class = Types::EventRiskType
1087
1092
 
1088
1093
  ExpiredCodeException.add_member(:message, Shapes::ShapeRef.new(shape: MessageType, location_name: "message"))
@@ -1866,6 +1871,7 @@ module Aws::CognitoIdentityProvider
1866
1871
  UserPoolType.add_member(:custom_domain, Shapes::ShapeRef.new(shape: DomainType, location_name: "CustomDomain"))
1867
1872
  UserPoolType.add_member(:admin_create_user_config, Shapes::ShapeRef.new(shape: AdminCreateUserConfigType, location_name: "AdminCreateUserConfig"))
1868
1873
  UserPoolType.add_member(:user_pool_add_ons, Shapes::ShapeRef.new(shape: UserPoolAddOnsType, location_name: "UserPoolAddOns"))
1874
+ UserPoolType.add_member(:username_configuration, Shapes::ShapeRef.new(shape: UsernameConfigurationType, location_name: "UsernameConfiguration"))
1869
1875
  UserPoolType.add_member(:arn, Shapes::ShapeRef.new(shape: ArnType, location_name: "Arn"))
1870
1876
  UserPoolType.add_member(:account_recovery_setting, Shapes::ShapeRef.new(shape: AccountRecoverySettingType, location_name: "AccountRecoverySetting"))
1871
1877
  UserPoolType.struct_class = Types::UserPoolType
@@ -1881,6 +1887,9 @@ module Aws::CognitoIdentityProvider
1881
1887
 
1882
1888
  UsernameAttributesListType.member = Shapes::ShapeRef.new(shape: UsernameAttributeType)
1883
1889
 
1890
+ UsernameConfigurationType.add_member(:case_sensitive, Shapes::ShapeRef.new(shape: WrappedBooleanType, required: true, location_name: "CaseSensitive"))
1891
+ UsernameConfigurationType.struct_class = Types::UsernameConfigurationType
1892
+
1884
1893
  UsernameExistsException.add_member(:message, Shapes::ShapeRef.new(shape: MessageType, location_name: "message"))
1885
1894
  UsernameExistsException.struct_class = Types::UsernameExistsException
1886
1895
 
@@ -6,6 +6,65 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::CognitoIdentityProvider
9
+
10
+ # When CognitoIdentityProvider returns an error response, the Ruby SDK constructs and raises an error.
11
+ # These errors all extend Aws::CognitoIdentityProvider::Errors::ServiceError < {Aws::Errors::ServiceError}
12
+ #
13
+ # You can rescue all CognitoIdentityProvider errors using ServiceError:
14
+ #
15
+ # begin
16
+ # # do stuff
17
+ # rescue Aws::CognitoIdentityProvider::Errors::ServiceError
18
+ # # rescues all CognitoIdentityProvider API errors
19
+ # end
20
+ #
21
+ #
22
+ # ## Request Context
23
+ # ServiceError objects have a {Aws::Errors::ServiceError#context #context} method that returns
24
+ # information about the request that generated the error.
25
+ # See {Seahorse::Client::RequestContext} for more information.
26
+ #
27
+ # ## Error Classes
28
+ # * {AliasExistsException}
29
+ # * {CodeDeliveryFailureException}
30
+ # * {CodeMismatchException}
31
+ # * {ConcurrentModificationException}
32
+ # * {DuplicateProviderException}
33
+ # * {EnableSoftwareTokenMFAException}
34
+ # * {ExpiredCodeException}
35
+ # * {GroupExistsException}
36
+ # * {InternalErrorException}
37
+ # * {InvalidEmailRoleAccessPolicyException}
38
+ # * {InvalidLambdaResponseException}
39
+ # * {InvalidOAuthFlowException}
40
+ # * {InvalidParameterException}
41
+ # * {InvalidPasswordException}
42
+ # * {InvalidSmsRoleAccessPolicyException}
43
+ # * {InvalidSmsRoleTrustRelationshipException}
44
+ # * {InvalidUserPoolConfigurationException}
45
+ # * {LimitExceededException}
46
+ # * {MFAMethodNotFoundException}
47
+ # * {NotAuthorizedException}
48
+ # * {PasswordResetRequiredException}
49
+ # * {PreconditionNotMetException}
50
+ # * {ResourceNotFoundException}
51
+ # * {ScopeDoesNotExistException}
52
+ # * {SoftwareTokenMFANotFoundException}
53
+ # * {TooManyFailedAttemptsException}
54
+ # * {TooManyRequestsException}
55
+ # * {UnexpectedLambdaException}
56
+ # * {UnsupportedIdentityProviderException}
57
+ # * {UnsupportedUserStateException}
58
+ # * {UserImportInProgressException}
59
+ # * {UserLambdaValidationException}
60
+ # * {UserNotConfirmedException}
61
+ # * {UserNotFoundException}
62
+ # * {UserPoolAddOnNotEnabledException}
63
+ # * {UserPoolTaggingException}
64
+ # * {UsernameExistsException}
65
+ #
66
+ # Additionally, error classes are dynamically generated for service errors based on the error code
67
+ # if they are not defined above.
9
68
  module Errors
10
69
 
11
70
  extend Aws::Errors::DynamicErrors
@@ -23,7 +82,6 @@ module Aws::CognitoIdentityProvider
23
82
  def message
24
83
  @message || @data[:message]
25
84
  end
26
-
27
85
  end
28
86
 
29
87
  class CodeDeliveryFailureException < ServiceError
@@ -39,7 +97,6 @@ module Aws::CognitoIdentityProvider
39
97
  def message
40
98
  @message || @data[:message]
41
99
  end
42
-
43
100
  end
44
101
 
45
102
  class CodeMismatchException < ServiceError
@@ -55,7 +112,6 @@ module Aws::CognitoIdentityProvider
55
112
  def message
56
113
  @message || @data[:message]
57
114
  end
58
-
59
115
  end
60
116
 
61
117
  class ConcurrentModificationException < ServiceError
@@ -71,7 +127,6 @@ module Aws::CognitoIdentityProvider
71
127
  def message
72
128
  @message || @data[:message]
73
129
  end
74
-
75
130
  end
76
131
 
77
132
  class DuplicateProviderException < ServiceError
@@ -87,7 +142,6 @@ module Aws::CognitoIdentityProvider
87
142
  def message
88
143
  @message || @data[:message]
89
144
  end
90
-
91
145
  end
92
146
 
93
147
  class EnableSoftwareTokenMFAException < ServiceError
@@ -103,7 +157,6 @@ module Aws::CognitoIdentityProvider
103
157
  def message
104
158
  @message || @data[:message]
105
159
  end
106
-
107
160
  end
108
161
 
109
162
  class ExpiredCodeException < ServiceError
@@ -119,7 +172,6 @@ module Aws::CognitoIdentityProvider
119
172
  def message
120
173
  @message || @data[:message]
121
174
  end
122
-
123
175
  end
124
176
 
125
177
  class GroupExistsException < ServiceError
@@ -135,7 +187,6 @@ module Aws::CognitoIdentityProvider
135
187
  def message
136
188
  @message || @data[:message]
137
189
  end
138
-
139
190
  end
140
191
 
141
192
  class InternalErrorException < ServiceError
@@ -151,7 +202,6 @@ module Aws::CognitoIdentityProvider
151
202
  def message
152
203
  @message || @data[:message]
153
204
  end
154
-
155
205
  end
156
206
 
157
207
  class InvalidEmailRoleAccessPolicyException < ServiceError
@@ -167,7 +217,6 @@ module Aws::CognitoIdentityProvider
167
217
  def message
168
218
  @message || @data[:message]
169
219
  end
170
-
171
220
  end
172
221
 
173
222
  class InvalidLambdaResponseException < ServiceError
@@ -183,7 +232,6 @@ module Aws::CognitoIdentityProvider
183
232
  def message
184
233
  @message || @data[:message]
185
234
  end
186
-
187
235
  end
188
236
 
189
237
  class InvalidOAuthFlowException < ServiceError
@@ -199,7 +247,6 @@ module Aws::CognitoIdentityProvider
199
247
  def message
200
248
  @message || @data[:message]
201
249
  end
202
-
203
250
  end
204
251
 
205
252
  class InvalidParameterException < ServiceError
@@ -215,7 +262,6 @@ module Aws::CognitoIdentityProvider
215
262
  def message
216
263
  @message || @data[:message]
217
264
  end
218
-
219
265
  end
220
266
 
221
267
  class InvalidPasswordException < ServiceError
@@ -231,7 +277,6 @@ module Aws::CognitoIdentityProvider
231
277
  def message
232
278
  @message || @data[:message]
233
279
  end
234
-
235
280
  end
236
281
 
237
282
  class InvalidSmsRoleAccessPolicyException < ServiceError
@@ -247,7 +292,6 @@ module Aws::CognitoIdentityProvider
247
292
  def message
248
293
  @message || @data[:message]
249
294
  end
250
-
251
295
  end
252
296
 
253
297
  class InvalidSmsRoleTrustRelationshipException < ServiceError
@@ -263,7 +307,6 @@ module Aws::CognitoIdentityProvider
263
307
  def message
264
308
  @message || @data[:message]
265
309
  end
266
-
267
310
  end
268
311
 
269
312
  class InvalidUserPoolConfigurationException < ServiceError
@@ -279,7 +322,6 @@ module Aws::CognitoIdentityProvider
279
322
  def message
280
323
  @message || @data[:message]
281
324
  end
282
-
283
325
  end
284
326
 
285
327
  class LimitExceededException < ServiceError
@@ -295,7 +337,6 @@ module Aws::CognitoIdentityProvider
295
337
  def message
296
338
  @message || @data[:message]
297
339
  end
298
-
299
340
  end
300
341
 
301
342
  class MFAMethodNotFoundException < ServiceError
@@ -311,7 +352,6 @@ module Aws::CognitoIdentityProvider
311
352
  def message
312
353
  @message || @data[:message]
313
354
  end
314
-
315
355
  end
316
356
 
317
357
  class NotAuthorizedException < ServiceError
@@ -327,7 +367,6 @@ module Aws::CognitoIdentityProvider
327
367
  def message
328
368
  @message || @data[:message]
329
369
  end
330
-
331
370
  end
332
371
 
333
372
  class PasswordResetRequiredException < ServiceError
@@ -343,7 +382,6 @@ module Aws::CognitoIdentityProvider
343
382
  def message
344
383
  @message || @data[:message]
345
384
  end
346
-
347
385
  end
348
386
 
349
387
  class PreconditionNotMetException < ServiceError
@@ -359,7 +397,6 @@ module Aws::CognitoIdentityProvider
359
397
  def message
360
398
  @message || @data[:message]
361
399
  end
362
-
363
400
  end
364
401
 
365
402
  class ResourceNotFoundException < ServiceError
@@ -375,7 +412,6 @@ module Aws::CognitoIdentityProvider
375
412
  def message
376
413
  @message || @data[:message]
377
414
  end
378
-
379
415
  end
380
416
 
381
417
  class ScopeDoesNotExistException < ServiceError
@@ -391,7 +427,6 @@ module Aws::CognitoIdentityProvider
391
427
  def message
392
428
  @message || @data[:message]
393
429
  end
394
-
395
430
  end
396
431
 
397
432
  class SoftwareTokenMFANotFoundException < ServiceError
@@ -407,7 +442,6 @@ module Aws::CognitoIdentityProvider
407
442
  def message
408
443
  @message || @data[:message]
409
444
  end
410
-
411
445
  end
412
446
 
413
447
  class TooManyFailedAttemptsException < ServiceError
@@ -423,7 +457,6 @@ module Aws::CognitoIdentityProvider
423
457
  def message
424
458
  @message || @data[:message]
425
459
  end
426
-
427
460
  end
428
461
 
429
462
  class TooManyRequestsException < ServiceError
@@ -439,7 +472,6 @@ module Aws::CognitoIdentityProvider
439
472
  def message
440
473
  @message || @data[:message]
441
474
  end
442
-
443
475
  end
444
476
 
445
477
  class UnexpectedLambdaException < ServiceError
@@ -455,7 +487,6 @@ module Aws::CognitoIdentityProvider
455
487
  def message
456
488
  @message || @data[:message]
457
489
  end
458
-
459
490
  end
460
491
 
461
492
  class UnsupportedIdentityProviderException < ServiceError
@@ -471,7 +502,6 @@ module Aws::CognitoIdentityProvider
471
502
  def message
472
503
  @message || @data[:message]
473
504
  end
474
-
475
505
  end
476
506
 
477
507
  class UnsupportedUserStateException < ServiceError
@@ -487,7 +517,6 @@ module Aws::CognitoIdentityProvider
487
517
  def message
488
518
  @message || @data[:message]
489
519
  end
490
-
491
520
  end
492
521
 
493
522
  class UserImportInProgressException < ServiceError
@@ -503,7 +532,6 @@ module Aws::CognitoIdentityProvider
503
532
  def message
504
533
  @message || @data[:message]
505
534
  end
506
-
507
535
  end
508
536
 
509
537
  class UserLambdaValidationException < ServiceError
@@ -519,7 +547,6 @@ module Aws::CognitoIdentityProvider
519
547
  def message
520
548
  @message || @data[:message]
521
549
  end
522
-
523
550
  end
524
551
 
525
552
  class UserNotConfirmedException < ServiceError
@@ -535,7 +562,6 @@ module Aws::CognitoIdentityProvider
535
562
  def message
536
563
  @message || @data[:message]
537
564
  end
538
-
539
565
  end
540
566
 
541
567
  class UserNotFoundException < ServiceError
@@ -551,7 +577,6 @@ module Aws::CognitoIdentityProvider
551
577
  def message
552
578
  @message || @data[:message]
553
579
  end
554
-
555
580
  end
556
581
 
557
582
  class UserPoolAddOnNotEnabledException < ServiceError
@@ -567,7 +592,6 @@ module Aws::CognitoIdentityProvider
567
592
  def message
568
593
  @message || @data[:message]
569
594
  end
570
-
571
595
  end
572
596
 
573
597
  class UserPoolTaggingException < ServiceError
@@ -583,7 +607,6 @@ module Aws::CognitoIdentityProvider
583
607
  def message
584
608
  @message || @data[:message]
585
609
  end
586
-
587
610
  end
588
611
 
589
612
  class UsernameExistsException < ServiceError
@@ -599,7 +622,6 @@ module Aws::CognitoIdentityProvider
599
622
  def message
600
623
  @message || @data[:message]
601
624
  end
602
-
603
625
  end
604
626
 
605
627
  end
@@ -6,6 +6,7 @@
6
6
  # WARNING ABOUT GENERATED CODE
7
7
 
8
8
  module Aws::CognitoIdentityProvider
9
+
9
10
  class Resource
10
11
 
11
12
  # @param options ({})
@@ -943,7 +943,7 @@ module Aws::CognitoIdentityProvider
943
943
  # client_id: "ClientIdType", # required
944
944
  # auth_flow: "USER_SRP_AUTH", # required, accepts USER_SRP_AUTH, REFRESH_TOKEN_AUTH, REFRESH_TOKEN, CUSTOM_AUTH, ADMIN_NO_SRP_AUTH, USER_PASSWORD_AUTH, ADMIN_USER_PASSWORD_AUTH
945
945
  # auth_parameters: {
946
- # "StringType" => "StringType",
946
+ # "StringType" => "AuthParametersValueType",
947
947
  # },
948
948
  # client_metadata: {
949
949
  # "StringType" => "StringType",
@@ -2104,6 +2104,12 @@ module Aws::CognitoIdentityProvider
2104
2104
  # The Amazon Pinpoint analytics configuration for collecting metrics for
2105
2105
  # a user pool.
2106
2106
  #
2107
+ # <note markdown="1"> Cognito User Pools only supports sending events to Amazon Pinpoint
2108
+ # projects in the US East (N. Virginia) us-east-1 Region, regardless of
2109
+ # the region in which the user pool resides.
2110
+ #
2111
+ # </note>
2112
+ #
2107
2113
  # @note When making an API call, you may pass AnalyticsConfigurationType
2108
2114
  # data as a hash:
2109
2115
  #
@@ -2147,6 +2153,12 @@ module Aws::CognitoIdentityProvider
2147
2153
  # An endpoint uniquely identifies a mobile device, email address, or
2148
2154
  # phone number that can receive messages from Amazon Pinpoint analytics.
2149
2155
  #
2156
+ # <note markdown="1"> Cognito User Pools only supports sending events to Amazon Pinpoint
2157
+ # projects in the US East (N. Virginia) us-east-1 Region, regardless of
2158
+ # the region in which the user pool resides.
2159
+ #
2160
+ # </note>
2161
+ #
2150
2162
  # @note When making an API call, you may pass AnalyticsMetadataType
2151
2163
  # data as a hash:
2152
2164
  #
@@ -2940,8 +2952,60 @@ module Aws::CognitoIdentityProvider
2940
2952
  # @return [String]
2941
2953
  #
2942
2954
  # @!attribute [rw] provider_details
2943
- # The identity provider details, such as `MetadataURL` and
2944
- # `MetadataFile`.
2955
+ # The identity provider details. The following list describes the
2956
+ # provider detail keys for each identity provider type.
2957
+ #
2958
+ # * For Google, Facebook and Login with Amazon:
2959
+ #
2960
+ # * client\_id
2961
+ #
2962
+ # * client\_secret
2963
+ #
2964
+ # * authorize\_scopes
2965
+ #
2966
+ # * For Sign in with Apple:
2967
+ #
2968
+ # * client\_id
2969
+ #
2970
+ # * team\_id
2971
+ #
2972
+ # * key\_id
2973
+ #
2974
+ # * private\_key
2975
+ #
2976
+ # * authorize\_scopes
2977
+ #
2978
+ # * For OIDC providers:
2979
+ #
2980
+ # * client\_id
2981
+ #
2982
+ # * client\_secret
2983
+ #
2984
+ # * attributes\_request\_method
2985
+ #
2986
+ # * oidc\_issuer
2987
+ #
2988
+ # * authorize\_scopes
2989
+ #
2990
+ # * authorize\_url *if not available from discovery URL specified by
2991
+ # oidc\_issuer key*
2992
+ #
2993
+ # * token\_url *if not available from discovery URL specified by
2994
+ # oidc\_issuer key*
2995
+ #
2996
+ # * attributes\_url *if not available from discovery URL specified
2997
+ # by oidc\_issuer key*
2998
+ #
2999
+ # * jwks\_uri *if not available from discovery URL specified by
3000
+ # oidc\_issuer key*
3001
+ #
3002
+ # * authorize\_scopes
3003
+ #
3004
+ # * For SAML providers:
3005
+ #
3006
+ # * MetadataFile OR MetadataURL
3007
+ #
3008
+ # * IDPSignout *optional*
2945
3009
  # @return [Hash<String,String>]
2946
3010
  #
2947
3011
  # @!attribute [rw] attribute_mapping
@@ -3233,29 +3297,41 @@ module Aws::CognitoIdentityProvider
3233
3297
  # @return [String]
3234
3298
  #
3235
3299
  # @!attribute [rw] allowed_o_auth_flows
3300
+ # The allowed OAuth flows.
3301
+ #
3236
3302
  # Set to `code` to initiate a code grant flow, which provides an
3237
3303
  # authorization code as the response. This code can be exchanged for
3238
3304
  # access tokens with the token endpoint.
3239
3305
  #
3240
- # Set to `token` to specify that the client should get the access
3306
+ # Set to `implicit` to specify that the client should get the access
3241
3307
  # token (and, optionally, ID token, based on scopes) directly.
3308
+ #
3309
+ # Set to `client_credentials` to specify that the client should get
3310
+ # the access token (and, optionally, ID token, based on scopes) from
3311
+ # the token endpoint using a combination of client and client\_secret.
3242
3312
  # @return [Array<String>]
3243
3313
  #
3244
3314
  # @!attribute [rw] allowed_o_auth_scopes
3245
- # A list of allowed `OAuth` scopes. Currently supported values are
3246
- # `"phone"`, `"email"`, `"openid"`, and `"Cognito"`. In addition to
3247
- # these values, custom scopes created in Resource Servers are also
3248
- # supported.
3315
+ # The allowed OAuth scopes. Possible values provided by OAuth are:
3316
+ # `phone`, `email`, `openid`, and `profile`. Possible values provided
3317
+ # by AWS are: `aws.cognito.signin.user.admin`. Custom scopes created
3318
+ # in Resource Servers are also supported.
3249
3319
  # @return [Array<String>]
3250
3320
  #
3251
3321
  # @!attribute [rw] allowed_o_auth_flows_user_pool_client
3252
- # Set to `True` if the client is allowed to follow the OAuth protocol
3322
+ # Set to true if the client is allowed to follow the OAuth protocol
3253
3323
  # when interacting with Cognito user pools.
3254
3324
  # @return [Boolean]
3255
3325
  #
3256
3326
  # @!attribute [rw] analytics_configuration
3257
3327
  # The Amazon Pinpoint analytics configuration for collecting metrics
3258
3328
  # for this user pool.
3329
+ #
3330
+ # <note markdown="1"> Cognito User Pools only supports sending events to Amazon Pinpoint
3331
+ # projects in the US East (N. Virginia) us-east-1 Region, regardless
3332
+ # of the region in which the user pool resides.
3333
+ #
3334
+ # </note>
3259
3335
  # @return [Types::AnalyticsConfigurationType]
3260
3336
  #
3261
3337
  # @!attribute [rw] prevent_user_existence_errors
@@ -3294,7 +3370,7 @@ module Aws::CognitoIdentityProvider
3294
3370
  #
3295
3371
  # * ResendConfirmationCode
3296
3372
  #
3297
- # <note markdown="1"> After January 1st 2020, the value of `PreventUserExistenceErrors`
3373
+ # <note markdown="1"> After February 15th 2020, the value of `PreventUserExistenceErrors`
3298
3374
  # will default to `ENABLED` for newly created user pool clients if no
3299
3375
  # value is provided.
3300
3376
  #
@@ -3484,6 +3560,9 @@ module Aws::CognitoIdentityProvider
3484
3560
  # user_pool_add_ons: {
3485
3561
  # advanced_security_mode: "OFF", # required, accepts OFF, AUDIT, ENFORCED
3486
3562
  # },
3563
+ # username_configuration: {
3564
+ # case_sensitive: false, # required
3565
+ # },
3487
3566
  # account_recovery_setting: {
3488
3567
  # recovery_mechanisms: [
3489
3568
  # {
@@ -3597,6 +3676,14 @@ module Aws::CognitoIdentityProvider
3597
3676
  # `AdvancedSecurityMode` to the value "AUDIT".
3598
3677
  # @return [Types::UserPoolAddOnsType]
3599
3678
  #
3679
+ # @!attribute [rw] username_configuration
3680
+ # You can choose to set case sensitivity on the username input for the
3681
+ # selected sign-in option. For example, when this is set to `False`,
3682
+ # users will be able to sign in using either "username" or
3683
+ # "Username". This configuration is immutable once it has been set.
3684
+ # For more information, see .
3685
+ # @return [Types::UsernameConfigurationType]
3686
+ #
3600
3687
  # @!attribute [rw] account_recovery_setting
3601
3688
  # Use this setting to define which verified available method a user
3602
3689
  # can use to recover their password when they call `ForgotPassword`.
@@ -3637,6 +3724,7 @@ module Aws::CognitoIdentityProvider
3637
3724
  :admin_create_user_config,
3638
3725
  :schema,
3639
3726
  :user_pool_add_ons,
3727
+ :username_configuration,
3640
3728
  :account_recovery_setting)
3641
3729
  include Aws::Structure
3642
3730
  end
@@ -4478,11 +4566,17 @@ module Aws::CognitoIdentityProvider
4478
4566
  # The risk level.
4479
4567
  # @return [String]
4480
4568
  #
4569
+ # @!attribute [rw] compromised_credentials_detected
4570
+ # Indicates whether compromised credentials were detected during an
4571
+ # authentication event.
4572
+ # @return [Boolean]
4573
+ #
4481
4574
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/EventRiskType AWS API Documentation
4482
4575
  #
4483
4576
  class EventRiskType < Struct.new(
4484
4577
  :risk_decision,
4485
- :risk_level)
4578
+ :risk_level,
4579
+ :compromised_credentials_detected)
4486
4580
  include Aws::Structure
4487
4581
  end
4488
4582
 
@@ -5193,8 +5287,60 @@ module Aws::CognitoIdentityProvider
5193
5287
  # @return [String]
5194
5288
  #
5195
5289
  # @!attribute [rw] provider_details
5196
- # The identity provider details, such as `MetadataURL` and
5197
- # `MetadataFile`.
5290
+ # The identity provider details. The following list describes the
5291
+ # provider detail keys for each identity provider type.
5292
+ #
5293
+ # * For Google, Facebook and Login with Amazon:
5294
+ #
5295
+ # * client\_id
5296
+ #
5297
+ # * client\_secret
5298
+ #
5299
+ # * authorize\_scopes
5300
+ #
5301
+ # * For Sign in with Apple:
5302
+ #
5303
+ # * client\_id
5304
+ #
5305
+ # * team\_id
5306
+ #
5307
+ # * key\_id
5308
+ #
5309
+ # * private\_key
5310
+ #
5311
+ # * authorize\_scopes
5312
+ #
5313
+ # * For OIDC providers:
5314
+ #
5315
+ # * client\_id
5316
+ #
5317
+ # * client\_secret
5318
+ #
5319
+ # * attributes\_request\_method
5320
+ #
5321
+ # * oidc\_issuer
5322
+ #
5323
+ # * authorize\_scopes
5324
+ #
5325
+ # * authorize\_url *if not available from discovery URL specified by
5326
+ # oidc\_issuer key*
5327
+ #
5328
+ # * token\_url *if not available from discovery URL specified by
5329
+ # oidc\_issuer key*
5330
+ #
5331
+ # * attributes\_url *if not available from discovery URL specified
5332
+ # by oidc\_issuer key*
5333
+ #
5334
+ # * jwks\_uri *if not available from discovery URL specified by
5335
+ # oidc\_issuer key*
5336
+ #
5337
+ # * authorize\_scopes
5338
+ #
5339
+ # * For SAML providers:
5340
+ #
5341
+ # * MetadataFile OR MetadataURL
5342
+ #
5343
+ # * IDPSignOut *optional*
5198
5344
  # @return [Hash<String,String>]
5199
5345
  #
5200
5346
  # @!attribute [rw] attribute_mapping
@@ -5236,7 +5382,7 @@ module Aws::CognitoIdentityProvider
5236
5382
  # {
5237
5383
  # auth_flow: "USER_SRP_AUTH", # required, accepts USER_SRP_AUTH, REFRESH_TOKEN_AUTH, REFRESH_TOKEN, CUSTOM_AUTH, ADMIN_NO_SRP_AUTH, USER_PASSWORD_AUTH, ADMIN_USER_PASSWORD_AUTH
5238
5384
  # auth_parameters: {
5239
- # "StringType" => "StringType",
5385
+ # "StringType" => "AuthParametersValueType",
5240
5386
  # },
5241
5387
  # client_metadata: {
5242
5388
  # "StringType" => "StringType",
@@ -7144,7 +7290,21 @@ module Aws::CognitoIdentityProvider
7144
7290
  # @return [String]
7145
7291
  #
7146
7292
  # @!attribute [rw] developer_only_attribute
7147
- # Specifies whether the attribute type is developer only.
7293
+ # <note markdown="1"> We recommend that you use [WriteAttributes][1] in the user pool
7294
+ # client to control how attributes can be mutated for new use cases
7295
+ # instead of using `DeveloperOnlyAttribute`.
7296
+ #
7297
+ # </note>
7298
+ #
7299
+ # Specifies whether the attribute type is developer only. This
7300
+ # attribute can only be modified by an administrator. Users will not
7301
+ # be able to modify this attribute using their access token. For
7302
+ # example, `DeveloperOnlyAttribute` can be modified using the API but
7303
+ # cannot be updated using the API.
7304
+ #
7305
+ #
7306
+ #
7307
+ # [1]: https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UserPoolClientType.html#CognitoUserPools-Type-UserPoolClientType-WriteAttributes
7148
7308
  # @return [Boolean]
7149
7309
  #
7150
7310
  # @!attribute [rw] mutable
@@ -8558,26 +8718,41 @@ module Aws::CognitoIdentityProvider
8558
8718
  # @return [String]
8559
8719
  #
8560
8720
  # @!attribute [rw] allowed_o_auth_flows
8721
+ # The allowed OAuth flows.
8722
+ #
8561
8723
  # Set to `code` to initiate a code grant flow, which provides an
8562
8724
  # authorization code as the response. This code can be exchanged for
8563
8725
  # access tokens with the token endpoint.
8726
+ #
8727
+ # Set to `implicit` to specify that the client should get the access
8728
+ # token (and, optionally, ID token, based on scopes) directly.
8729
+ #
8730
+ # Set to `client_credentials` to specify that the client should get
8731
+ # the access token (and, optionally, ID token, based on scopes) from
8732
+ # the token endpoint using a combination of client and client\_secret.
8564
8733
  # @return [Array<String>]
8565
8734
  #
8566
8735
  # @!attribute [rw] allowed_o_auth_scopes
8567
- # A list of allowed `OAuth` scopes. Currently supported values are
8568
- # `"phone"`, `"email"`, `"openid"`, and `"Cognito"`. In addition to
8569
- # these values, custom scopes created in Resource Servers are also
8570
- # supported.
8736
+ # The allowed OAuth scopes. Possible values provided by OAuth are:
8737
+ # `phone`, `email`, `openid`, and `profile`. Possible values provided
8738
+ # by AWS are: `aws.cognito.signin.user.admin`. Custom scopes created
8739
+ # in Resource Servers are also supported.
8571
8740
  # @return [Array<String>]
8572
8741
  #
8573
8742
  # @!attribute [rw] allowed_o_auth_flows_user_pool_client
8574
- # Set to TRUE if the client is allowed to follow the OAuth protocol
8743
+ # Set to true if the client is allowed to follow the OAuth protocol
8575
8744
  # when interacting with Cognito user pools.
8576
8745
  # @return [Boolean]
8577
8746
  #
8578
8747
  # @!attribute [rw] analytics_configuration
8579
8748
  # The Amazon Pinpoint analytics configuration for collecting metrics
8580
8749
  # for this user pool.
8750
+ #
8751
+ # <note markdown="1"> Cognito User Pools only supports sending events to Amazon Pinpoint
8752
+ # projects in the US East (N. Virginia) us-east-1 Region, regardless
8753
+ # of the region in which the user pool resides.
8754
+ #
8755
+ # </note>
8581
8756
  # @return [Types::AnalyticsConfigurationType]
8582
8757
  #
8583
8758
  # @!attribute [rw] prevent_user_existence_errors
@@ -8616,7 +8791,7 @@ module Aws::CognitoIdentityProvider
8616
8791
  #
8617
8792
  # * ResendConfirmationCode
8618
8793
  #
8619
- # <note markdown="1"> After January 1st 2020, the value of `PreventUserExistenceErrors`
8794
+ # <note markdown="1"> After February 15th 2020, the value of `PreventUserExistenceErrors`
8620
8795
  # will default to `ENABLED` for newly created user pool clients if no
8621
8796
  # value is provided.
8622
8797
  #
@@ -9273,29 +9448,41 @@ module Aws::CognitoIdentityProvider
9273
9448
  # @return [String]
9274
9449
  #
9275
9450
  # @!attribute [rw] allowed_o_auth_flows
9451
+ # The allowed OAuth flows.
9452
+ #
9276
9453
  # Set to `code` to initiate a code grant flow, which provides an
9277
9454
  # authorization code as the response. This code can be exchanged for
9278
9455
  # access tokens with the token endpoint.
9279
9456
  #
9280
- # Set to `token` to specify that the client should get the access
9457
+ # Set to `implicit` to specify that the client should get the access
9281
9458
  # token (and, optionally, ID token, based on scopes) directly.
9459
+ #
9460
+ # Set to `client_credentials` to specify that the client should get
9461
+ # the access token (and, optionally, ID token, based on scopes) from
9462
+ # the token endpoint using a combination of client and client\_secret.
9282
9463
  # @return [Array<String>]
9283
9464
  #
9284
9465
  # @!attribute [rw] allowed_o_auth_scopes
9285
- # A list of allowed `OAuth` scopes. Currently supported values are
9286
- # `"phone"`, `"email"`, `"openid"`, and `"Cognito"`. In addition to
9287
- # these values, custom scopes created in Resource Servers are also
9288
- # supported.
9466
+ # The allowed OAuth scopes. Possible values provided by OAuth are:
9467
+ # `phone`, `email`, `openid`, and `profile`. Possible values provided
9468
+ # by AWS are: `aws.cognito.signin.user.admin`. Custom scopes created
9469
+ # in Resource Servers are also supported.
9289
9470
  # @return [Array<String>]
9290
9471
  #
9291
9472
  # @!attribute [rw] allowed_o_auth_flows_user_pool_client
9292
- # Set to TRUE if the client is allowed to follow the OAuth protocol
9473
+ # Set to true if the client is allowed to follow the OAuth protocol
9293
9474
  # when interacting with Cognito user pools.
9294
9475
  # @return [Boolean]
9295
9476
  #
9296
9477
  # @!attribute [rw] analytics_configuration
9297
9478
  # The Amazon Pinpoint analytics configuration for the user pool
9298
9479
  # client.
9480
+ #
9481
+ # <note markdown="1"> Cognito User Pools only supports sending events to Amazon Pinpoint
9482
+ # projects in the US East (N. Virginia) us-east-1 Region, regardless
9483
+ # of the region in which the user pool resides.
9484
+ #
9485
+ # </note>
9299
9486
  # @return [Types::AnalyticsConfigurationType]
9300
9487
  #
9301
9488
  # @!attribute [rw] prevent_user_existence_errors
@@ -9334,7 +9521,7 @@ module Aws::CognitoIdentityProvider
9334
9521
  #
9335
9522
  # * ResendConfirmationCode
9336
9523
  #
9337
- # <note markdown="1"> After January 1st 2020, the value of `PreventUserExistenceErrors`
9524
+ # <note markdown="1"> After February 15th 2020, the value of `PreventUserExistenceErrors`
9338
9525
  # will default to `ENABLED` for newly created user pool clients if no
9339
9526
  # value is provided.
9340
9527
  #
@@ -9584,6 +9771,14 @@ module Aws::CognitoIdentityProvider
9584
9771
  # The user pool add-ons.
9585
9772
  # @return [Types::UserPoolAddOnsType]
9586
9773
  #
9774
+ # @!attribute [rw] username_configuration
9775
+ # You can choose to enable case sensitivity on the username input for
9776
+ # the selected sign-in option. For example, when this is set to
9777
+ # `False`, users will be able to sign in using either "username" or
9778
+ # "Username". This configuration is immutable once it has been set.
9779
+ # For more information, see .
9780
+ # @return [Types::UsernameConfigurationType]
9781
+ #
9587
9782
  # @!attribute [rw] arn
9588
9783
  # The Amazon Resource Name (ARN) for the user pool.
9589
9784
  # @return [String]
@@ -9630,6 +9825,7 @@ module Aws::CognitoIdentityProvider
9630
9825
  :custom_domain,
9631
9826
  :admin_create_user_config,
9632
9827
  :user_pool_add_ons,
9828
+ :username_configuration,
9633
9829
  :arn,
9634
9830
  :account_recovery_setting)
9635
9831
  include Aws::Structure
@@ -9696,6 +9892,41 @@ module Aws::CognitoIdentityProvider
9696
9892
  include Aws::Structure
9697
9893
  end
9698
9894
 
9895
+ # The username configuration type.
9896
+ #
9897
+ # @note When making an API call, you may pass UsernameConfigurationType
9898
+ # data as a hash:
9899
+ #
9900
+ # {
9901
+ # case_sensitive: false, # required
9902
+ # }
9903
+ #
9904
+ # @!attribute [rw] case_sensitive
9905
+ # Specifies whether username case sensitivity will be applied for all
9906
+ # users in the user pool through Cognito APIs.
9907
+ #
9908
+ # Valid values include:
9909
+ #
9910
+ # * <b> <code>True</code> </b>\: Enables case sensitivity for all
9911
+ # username input. When this option is set to `True`, users must sign
9912
+ # in using the exact capitalization of their given username. For
9913
+ # example, “UserName”. This is the default value.
9914
+ #
9915
+ # * <b> <code>False</code> </b>\: Enables case insensitivity for all
9916
+ # username input. For example, when this option is set to `False`,
9917
+ # users will be able to sign in using either "username" or
9918
+ # "Username". This option also enables both `preferred_username`
9919
+ # and `email` alias to be case insensitive, in addition to the
9920
+ # `username` attribute.
9921
+ # @return [Boolean]
9922
+ #
9923
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/UsernameConfigurationType AWS API Documentation
9924
+ #
9925
+ class UsernameConfigurationType < Struct.new(
9926
+ :case_sensitive)
9927
+ include Aws::Structure
9928
+ end
9929
+
9699
9930
  # This exception is thrown when Amazon Cognito encounters a user name
9700
9931
  # that already exists in the user pool.
9701
9932
  #