aws-sdk-cognitoidentityprovider 1.64.0 → 1.67.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -51,7 +51,8 @@ module Aws::CognitoIdentityProvider
51
51
  # @return [Boolean]
52
52
  #
53
53
  # @!attribute [rw] event_action
54
- # The event action.
54
+ # The action to take in response to the account takeover action. Valid
55
+ # values are as follows:
55
56
  #
56
57
  # * `BLOCK` Choosing this action will block the request.
57
58
  #
@@ -292,7 +293,7 @@ module Aws::CognitoIdentityProvider
292
293
  # you can process the ClientMetadata value to enhance your workflow
293
294
  # for your specific needs.
294
295
  #
295
- # For more information, see [Customizing User Pool Workflows with
296
+ # For more information, see [ Customizing user pool Workflows with
296
297
  # Lambda Triggers][1] in the *Amazon Cognito Developer Guide*.
297
298
  #
298
299
  # <note markdown="1"> When you use the ClientMetadata parameter, remember that Amazon
@@ -353,11 +354,11 @@ module Aws::CognitoIdentityProvider
353
354
  # @return [Boolean]
354
355
  #
355
356
  # @!attribute [rw] unused_account_validity_days
356
- # The user account expiration limit, in days, after which the account
357
- # is no longer usable. To reset the account after that time limit, you
358
- # must call `AdminCreateUser` again, specifying `"RESEND"` for the
359
- # `MessageAction` parameter. The default value for this parameter is
360
- # 7.
357
+ # The user account expiration limit, in days, after which a new
358
+ # account that hasn't signed in is no longer usable. To reset the
359
+ # account after that time limit, you must call `AdminCreateUser`
360
+ # again, specifying `"RESEND"` for the `MessageAction` parameter. The
361
+ # default value for this parameter is 7.
361
362
  #
362
363
  # <note markdown="1"> If you set a value for `TemporaryPasswordValidityDays` in
363
364
  # `PasswordPolicy`, that value will be used, and
@@ -543,7 +544,7 @@ module Aws::CognitoIdentityProvider
543
544
  # `clientMetadata` value to enhance your workflow for your specific
544
545
  # needs.
545
546
  #
546
- # For more information, see [Customizing User Pool Workflows with
547
+ # For more information, see [ Customizing user pool Workflows with
547
548
  # Lambda Triggers][1] in the *Amazon Cognito Developer Guide*.
548
549
  #
549
550
  # <note markdown="1"> When you use the ClientMetadata parameter, remember that Amazon
@@ -914,8 +915,6 @@ module Aws::CognitoIdentityProvider
914
915
  #
915
916
  # * ARCHIVED - User is no longer active.
916
917
  #
917
- # * COMPROMISED - User is disabled due to a potential security threat.
918
- #
919
918
  # * UNKNOWN - User status isn't known.
920
919
  #
921
920
  # * RESET\_REQUIRED - User is confirmed, but the user must request a
@@ -1099,7 +1098,7 @@ module Aws::CognitoIdentityProvider
1099
1098
  #
1100
1099
  # * Verify auth challenge
1101
1100
  #
1102
- # For more information, see [Customizing User Pool Workflows with
1101
+ # For more information, see [ Customizing user pool Workflows with
1103
1102
  # Lambda Triggers][1] in the *Amazon Cognito Developer Guide*.
1104
1103
  #
1105
1104
  # <note markdown="1"> When you use the ClientMetadata parameter, remember that Amazon
@@ -1128,9 +1127,11 @@ module Aws::CognitoIdentityProvider
1128
1127
  # @return [Types::AnalyticsMetadataType]
1129
1128
  #
1130
1129
  # @!attribute [rw] context_data
1131
- # Contextual data such as the user's device fingerprint, IP address,
1132
- # or location used for evaluating the risk of an unexpected event by
1133
- # Amazon Cognito advanced security.
1130
+ # Contextual data about your user session, such as the device
1131
+ # fingerprint, IP address, or location. Amazon Cognito advanced
1132
+ # security evaluates the risk of an authentication event based on the
1133
+ # context that your app generates and passes to Amazon Cognito when it
1134
+ # makes API requests.
1134
1135
  # @return [Types::ContextDataType]
1135
1136
  #
1136
1137
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AdminInitiateAuthRequest AWS API Documentation
@@ -1186,9 +1187,21 @@ module Aws::CognitoIdentityProvider
1186
1187
  # enabled to use this flow.
1187
1188
  #
1188
1189
  # * `NEW_PASSWORD_REQUIRED`\: For users who are required to change
1189
- # their passwords after successful first login. This challenge
1190
- # should be passed with `NEW_PASSWORD` and any other required
1191
- # attributes.
1190
+ # their passwords after successful first login. Respond to this
1191
+ # challenge with `NEW_PASSWORD` and any required attributes that
1192
+ # Amazon Cognito returned in the `requiredAttributes` parameter. You
1193
+ # can also set values for attributes that aren't required by your
1194
+ # user pool and that your app client can write. For more
1195
+ # information, see [AdminRespondToAuthChallenge][1].
1196
+ #
1197
+ # <note markdown="1"> In a `NEW_PASSWORD_REQUIRED` challenge response, you can't modify
1198
+ # a required attribute that already has a value. In
1199
+ # `AdminRespondToAuthChallenge`, set a value for any keys that
1200
+ # Amazon Cognito returned in the `requiredAttributes` parameter,
1201
+ # then use the `AdminUpdateUserAttributes` API operation to modify
1202
+ # the value of any additional attributes.
1203
+ #
1204
+ # </note>
1192
1205
  #
1193
1206
  # * `MFA_SETUP`\: For users who are required to set up an MFA factor
1194
1207
  # before they can sign in. The MFA types activated for the user pool
@@ -1201,6 +1214,10 @@ module Aws::CognitoIdentityProvider
1201
1214
  # complete sign-in. To set up SMS MFA, users will need help from an
1202
1215
  # administrator to add a phone number to their account and then call
1203
1216
  # `InitiateAuth` again to restart sign-in.
1217
+ #
1218
+ #
1219
+ #
1220
+ # [1]: https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminRespondToAuthChallenge.html
1204
1221
  # @return [String]
1205
1222
  #
1206
1223
  # @!attribute [rw] session
@@ -1267,12 +1284,12 @@ module Aws::CognitoIdentityProvider
1267
1284
  # @return [String]
1268
1285
  #
1269
1286
  # @!attribute [rw] destination_user
1270
- # The existing user in the user pool to be linked to the external
1271
- # identity provider user account. Can be a native (Username +
1272
- # Password) Amazon Cognito User Pools user or a federated user (for
1273
- # example, a SAML or Facebook user). If the user doesn't exist, an
1274
- # exception is thrown. This is the user that is returned when the new
1275
- # user (with the linked identity provider attribute) signs in.
1287
+ # The existing user in the user pool that you want to assign to the
1288
+ # external IdP user account. This user can be a native (Username +
1289
+ # Password) Amazon Cognito user pools user or a federated user (for
1290
+ # example, a SAML or Facebook user). If the user doesn't exist,
1291
+ # Amazon Cognito generates an exception. Amazon Cognito returns this
1292
+ # user when the new user (with the linked IdP attribute) signs in.
1276
1293
  #
1277
1294
  # For a native username + password user, the `ProviderAttributeValue`
1278
1295
  # for the `DestinationUser` should be the username in the user pool.
@@ -1289,30 +1306,29 @@ module Aws::CognitoIdentityProvider
1289
1306
  # @return [Types::ProviderUserIdentifierType]
1290
1307
  #
1291
1308
  # @!attribute [rw] source_user
1292
- # An external identity provider account for a user who doesn't exist
1293
- # yet in the user pool. This user must be a federated user (for
1294
- # example, a SAML or Facebook user), not another native user.
1309
+ # An external IdP account for a user who doesn't exist yet in the
1310
+ # user pool. This user must be a federated user (for example, a SAML
1311
+ # or Facebook user), not another native user.
1295
1312
  #
1296
- # If the `SourceUser` is using a federated social identity provider,
1297
- # such as Facebook, Google, or Login with Amazon, you must set the
1298
- # `ProviderAttributeName` to `Cognito_Subject`. For social identity
1299
- # providers, the `ProviderName` will be `Facebook`, `Google`, or
1300
- # `LoginWithAmazon`, and Amazon Cognito will automatically parse the
1301
- # Facebook, Google, and Login with Amazon tokens for `id`, `sub`, and
1302
- # `user_id`, respectively. The `ProviderAttributeValue` for the user
1303
- # must be the same value as the `id`, `sub`, or `user_id` value found
1304
- # in the social identity provider token.
1313
+ # If the `SourceUser` is using a federated social IdP, such as
1314
+ # Facebook, Google, or Login with Amazon, you must set the
1315
+ # `ProviderAttributeName` to `Cognito_Subject`. For social IdPs, the
1316
+ # `ProviderName` will be `Facebook`, `Google`, or `LoginWithAmazon`,
1317
+ # and Amazon Cognito will automatically parse the Facebook, Google,
1318
+ # and Login with Amazon tokens for `id`, `sub`, and `user_id`,
1319
+ # respectively. The `ProviderAttributeValue` for the user must be the
1320
+ # same value as the `id`, `sub`, or `user_id` value found in the
1321
+ # social IdP token.
1305
1322
  #
1306
1323
  #
1307
1324
  #
1308
1325
  # For SAML, the `ProviderAttributeName` can be any value that matches
1309
1326
  # a claim in the SAML assertion. If you want to link SAML users based
1310
1327
  # on the subject of the SAML assertion, you should map the subject to
1311
- # a claim through the SAML identity provider and submit that claim
1312
- # name as the `ProviderAttributeName`. If you set
1313
- # `ProviderAttributeName` to `Cognito_Subject`, Amazon Cognito will
1314
- # automatically parse the default unique identifier found in the
1315
- # subject from the SAML token.
1328
+ # a claim through the SAML IdP and submit that claim name as the
1329
+ # `ProviderAttributeName`. If you set `ProviderAttributeName` to
1330
+ # `Cognito_Subject`, Amazon Cognito will automatically parse the
1331
+ # default unique identifier found in the subject from the SAML token.
1316
1332
  # @return [Types::ProviderUserIdentifierType]
1317
1333
  #
1318
1334
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AdminLinkProviderForUserRequest AWS API Documentation
@@ -1569,7 +1585,7 @@ module Aws::CognitoIdentityProvider
1569
1585
  # can process the `clientMetadata` value to enhance your workflow for
1570
1586
  # your specific needs.
1571
1587
  #
1572
- # For more information, see [Customizing User Pool Workflows with
1588
+ # For more information, see [ Customizing user pool Workflows with
1573
1589
  # Lambda Triggers][1] in the *Amazon Cognito Developer Guide*.
1574
1590
  #
1575
1591
  # <note markdown="1"> When you use the ClientMetadata parameter, remember that Amazon
@@ -1679,9 +1695,22 @@ module Aws::CognitoIdentityProvider
1679
1695
  # * `ADMIN_NO_SRP_AUTH`\: `PASSWORD`, `USERNAME`, `SECRET_HASH` (if
1680
1696
  # app client is configured with client secret).
1681
1697
  #
1682
- # * `NEW_PASSWORD_REQUIRED`\: `NEW_PASSWORD`, any other required
1683
- # attributes, `USERNAME`, `SECRET_HASH` (if app client is configured
1684
- # with client secret).
1698
+ # * `NEW_PASSWORD_REQUIRED`\: `NEW_PASSWORD`, `USERNAME`,
1699
+ # `SECRET_HASH` (if app client is configured with client secret). To
1700
+ # set any required attributes that Amazon Cognito returned as
1701
+ # `requiredAttributes` in the `AdminInitiateAuth` response, add a
1702
+ # `userAttributes.attributename ` parameter. This parameter can also
1703
+ # set values for writable attributes that aren't required by your
1704
+ # user pool.
1705
+ #
1706
+ # <note markdown="1"> In a `NEW_PASSWORD_REQUIRED` challenge response, you can't modify
1707
+ # a required attribute that already has a value. In
1708
+ # `AdminRespondToAuthChallenge`, set a value for any keys that
1709
+ # Amazon Cognito returned in the `requiredAttributes` parameter,
1710
+ # then use the `AdminUpdateUserAttributes` API operation to modify
1711
+ # the value of any additional attributes.
1712
+ #
1713
+ # </note>
1685
1714
  #
1686
1715
  # * `MFA_SETUP` requires `USERNAME`, plus you must use the session
1687
1716
  # value returned by `VerifySoftwareToken` in the `Session`
@@ -1710,9 +1739,11 @@ module Aws::CognitoIdentityProvider
1710
1739
  # @return [Types::AnalyticsMetadataType]
1711
1740
  #
1712
1741
  # @!attribute [rw] context_data
1713
- # Contextual data such as the user's device fingerprint, IP address,
1714
- # or location used for evaluating the risk of an unexpected event by
1715
- # Amazon Cognito advanced security.
1742
+ # Contextual data about your user session, such as the device
1743
+ # fingerprint, IP address, or location. Amazon Cognito advanced
1744
+ # security evaluates the risk of an authentication event based on the
1745
+ # context that your app generates and passes to Amazon Cognito when it
1746
+ # makes API requests.
1716
1747
  # @return [Types::ContextDataType]
1717
1748
  #
1718
1749
  # @!attribute [rw] client_metadata
@@ -1721,19 +1752,34 @@ module Aws::CognitoIdentityProvider
1721
1752
  #
1722
1753
  # You create custom workflows by assigning Lambda functions to user
1723
1754
  # pool triggers. When you use the AdminRespondToAuthChallenge API
1724
- # action, Amazon Cognito invokes any functions that are assigned to
1725
- # the following triggers: *pre sign-up*, *custom message*, *post
1726
- # authentication*, *user migration*, *pre token generation*, *define
1727
- # auth challenge*, *create auth challenge*, and *verify auth challenge
1728
- # response*. When Amazon Cognito invokes any of these functions, it
1729
- # passes a JSON payload, which the function receives as input. This
1730
- # payload contains a `clientMetadata` attribute, which provides the
1731
- # data that you assigned to the ClientMetadata parameter in your
1755
+ # action, Amazon Cognito invokes any functions that you have assigned
1756
+ # to the following triggers:
1757
+ #
1758
+ # * pre sign-up
1759
+ #
1760
+ # * custom message
1761
+ #
1762
+ # * post authentication
1763
+ #
1764
+ # * user migration
1765
+ #
1766
+ # * pre token generation
1767
+ #
1768
+ # * define auth challenge
1769
+ #
1770
+ # * create auth challenge
1771
+ #
1772
+ # * verify auth challenge response
1773
+ #
1774
+ # When Amazon Cognito invokes any of these functions, it passes a JSON
1775
+ # payload, which the function receives as input. This payload contains
1776
+ # a `clientMetadata` attribute that provides the data that you
1777
+ # assigned to the ClientMetadata parameter in your
1732
1778
  # AdminRespondToAuthChallenge request. In your function code in
1733
1779
  # Lambda, you can process the `clientMetadata` value to enhance your
1734
1780
  # workflow for your specific needs.
1735
1781
  #
1736
- # For more information, see [Customizing User Pool Workflows with
1782
+ # For more information, see [ Customizing user pool Workflows with
1737
1783
  # Lambda Triggers][1] in the *Amazon Cognito Developer Guide*.
1738
1784
  #
1739
1785
  # <note markdown="1"> When you use the ClientMetadata parameter, remember that Amazon
@@ -2074,6 +2120,22 @@ module Aws::CognitoIdentityProvider
2074
2120
  #
2075
2121
  # For custom attributes, you must prepend the `custom:` prefix to the
2076
2122
  # attribute name.
2123
+ #
2124
+ # If your user pool requires verification before Amazon Cognito
2125
+ # updates an attribute value that you specify in this request, Amazon
2126
+ # Cognito doesn’t immediately update the value of that attribute.
2127
+ # After your user receives and responds to a verification message to
2128
+ # verify the new value, Amazon Cognito updates the attribute value.
2129
+ # Your user can sign in and receive messages with the original
2130
+ # attribute value until they verify the new value.
2131
+ #
2132
+ # To update the value of an attribute that requires verification in
2133
+ # the same API request, include the `email_verified` or
2134
+ # `phone_number_verified` attribute, with a value of `true`. If you
2135
+ # set the `email_verified` or `phone_number_verified` value for an
2136
+ # `email` or `phone_number` attribute that requires verification to
2137
+ # `true`, Amazon Cognito doesn’t send a verification message to your
2138
+ # user.
2077
2139
  # @return [Array<Types::AttributeType>]
2078
2140
  #
2079
2141
  # @!attribute [rw] client_metadata
@@ -2091,7 +2153,7 @@ module Aws::CognitoIdentityProvider
2091
2153
  # you can process the `clientMetadata` value to enhance your workflow
2092
2154
  # for your specific needs.
2093
2155
  #
2094
- # For more information, see [Customizing User Pool Workflows with
2156
+ # For more information, see [ Customizing user pool Workflows with
2095
2157
  # Lambda Triggers][1] in the *Amazon Cognito Developer Guide*.
2096
2158
  #
2097
2159
  # <note markdown="1"> When you use the ClientMetadata parameter, remember that Amazon
@@ -2166,9 +2228,11 @@ module Aws::CognitoIdentityProvider
2166
2228
  class AdminUserGlobalSignOutResponse < Aws::EmptyStructure; end
2167
2229
 
2168
2230
  # This exception is thrown when a user tries to confirm the account with
2169
- # an email or phone number that has already been supplied as an alias
2170
- # from a different account. This exception tells user that an account
2171
- # with this email or phone already exists.
2231
+ # an email address or phone number that has already been supplied as an
2232
+ # alias for a different user profile. This exception indicates that an
2233
+ # account with this email address or phone already exists in a user pool
2234
+ # that you've configured to use email address or phone number as a
2235
+ # sign-in alias.
2172
2236
  #
2173
2237
  # @!attribute [rw] message
2174
2238
  # The message sent to the user when an alias exists.
@@ -2182,13 +2246,13 @@ module Aws::CognitoIdentityProvider
2182
2246
  include Aws::Structure
2183
2247
  end
2184
2248
 
2185
- # The Amazon Pinpoint analytics configuration for collecting metrics for
2186
- # a user pool.
2249
+ # The Amazon Pinpoint analytics configuration necessary to collect
2250
+ # metrics for a user pool.
2187
2251
  #
2188
- # <note markdown="1"> In Regions where Pinpoint isn't available, User Pools only supports
2189
- # sending events to Amazon Pinpoint projects in us-east-1. In Regions
2190
- # where Pinpoint is available, User Pools will support sending events to
2191
- # Amazon Pinpoint projects within that same Region.
2252
+ # <note markdown="1"> In Regions where Amazon Pinpointisn't available, user pools only
2253
+ # support sending events to Amazon Pinpoint projects in us-east-1. In
2254
+ # Regions where Amazon Pinpoint is available, user pools support sending
2255
+ # events to Amazon Pinpoint projects within that same Region.
2192
2256
  #
2193
2257
  # </note>
2194
2258
  #
@@ -2209,9 +2273,9 @@ module Aws::CognitoIdentityProvider
2209
2273
  #
2210
2274
  # @!attribute [rw] application_arn
2211
2275
  # The Amazon Resource Name (ARN) of an Amazon Pinpoint project. You
2212
- # can use the Amazon Pinpoint project for integration with the chosen
2213
- # User Pool Client. Amazon Cognito publishes events to the Amazon
2214
- # Pinpointproject declared by the app ARN.
2276
+ # can use the Amazon Pinpoint project to integrate with the chosen
2277
+ # user pool Client. Amazon Cognito publishes events to the Amazon
2278
+ # Pinpoint project that the app ARN declares.
2215
2279
  # @return [String]
2216
2280
  #
2217
2281
  # @!attribute [rw] role_arn
@@ -2224,8 +2288,8 @@ module Aws::CognitoIdentityProvider
2224
2288
  # @return [String]
2225
2289
  #
2226
2290
  # @!attribute [rw] user_data_shared
2227
- # If `UserDataShared` is `true`, Amazon Cognito will include user data
2228
- # in the events it publishes to Amazon Pinpoint analytics.
2291
+ # If `UserDataShared` is `true`, Amazon Cognito includes user data in
2292
+ # the events that it publishes to Amazon Pinpoint analytics.
2229
2293
  # @return [Boolean]
2230
2294
  #
2231
2295
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AnalyticsConfigurationType AWS API Documentation
@@ -2244,12 +2308,14 @@ module Aws::CognitoIdentityProvider
2244
2308
  #
2245
2309
  # An endpoint uniquely identifies a mobile device, email address, or
2246
2310
  # phone number that can receive messages from Amazon Pinpoint analytics.
2311
+ # For more information about Amazon Web Services Regions that can
2312
+ # contain Amazon Pinpoint resources for use with Amazon Cognito user
2313
+ # pools, see [Using Amazon Pinpoint analytics with Amazon Cognito user
2314
+ # pools][1].
2247
2315
  #
2248
- # <note markdown="1"> Amazon Cognito User Pools only supports sending events to Amazon
2249
- # Pinpoint projects in the US East (N. Virginia) us-east-1 Region,
2250
- # regardless of the Region in which the user pool resides.
2251
2316
  #
2252
- # </note>
2317
+ #
2318
+ # [1]: https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-pinpoint-integration.html
2253
2319
  #
2254
2320
  # @note When making an API call, you may pass AnalyticsMetadataType
2255
2321
  # data as a hash:
@@ -2279,7 +2345,8 @@ module Aws::CognitoIdentityProvider
2279
2345
  # }
2280
2346
  #
2281
2347
  # @!attribute [rw] access_token
2282
- # The access token.
2348
+ # A valid access token that Amazon Cognito issued to the user whose
2349
+ # software token you want to generate.
2283
2350
  # @return [String]
2284
2351
  #
2285
2352
  # @!attribute [rw] session
@@ -2399,7 +2466,8 @@ module Aws::CognitoIdentityProvider
2399
2466
  # The authentication result.
2400
2467
  #
2401
2468
  # @!attribute [rw] access_token
2402
- # The access token.
2469
+ # A valid access token that Amazon Cognito issued to the user who you
2470
+ # want to authenticate.
2403
2471
  # @return [String]
2404
2472
  #
2405
2473
  # @!attribute [rw] expires_in
@@ -2474,7 +2542,8 @@ module Aws::CognitoIdentityProvider
2474
2542
  # @return [String]
2475
2543
  #
2476
2544
  # @!attribute [rw] access_token
2477
- # The access token.
2545
+ # A valid access token that Amazon Cognito issued to the user whose
2546
+ # password you want to change.
2478
2547
  # @return [String]
2479
2548
  #
2480
2549
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/ChangePasswordRequest AWS API Documentation
@@ -2493,18 +2562,21 @@ module Aws::CognitoIdentityProvider
2493
2562
  #
2494
2563
  class ChangePasswordResponse < Aws::EmptyStructure; end
2495
2564
 
2496
- # The code delivery details being returned from the server.
2565
+ # The delivery details for an email or SMS message that Amazon Cognito
2566
+ # sent for authentication or verification.
2497
2567
  #
2498
2568
  # @!attribute [rw] destination
2499
- # The destination for the code delivery details.
2569
+ # The email address or phone number destination where Amazon Cognito
2570
+ # sent the code.
2500
2571
  # @return [String]
2501
2572
  #
2502
2573
  # @!attribute [rw] delivery_medium
2503
- # The delivery medium (email message or phone number).
2574
+ # The method that Amazon Cognito used to send the code.
2504
2575
  # @return [String]
2505
2576
  #
2506
2577
  # @!attribute [rw] attribute_name
2507
- # The attribute name.
2578
+ # The name of the attribute that Amazon Cognito verifies with the
2579
+ # code.
2508
2580
  # @return [String]
2509
2581
  #
2510
2582
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/CodeDeliveryDetailsType AWS API Documentation
@@ -2630,7 +2702,8 @@ module Aws::CognitoIdentityProvider
2630
2702
  # }
2631
2703
  #
2632
2704
  # @!attribute [rw] access_token
2633
- # The access token.
2705
+ # A valid access token that Amazon Cognito issued to the user whose
2706
+ # device you want to confirm.
2634
2707
  # @return [String]
2635
2708
  #
2636
2709
  # @!attribute [rw] device_key
@@ -2686,6 +2759,7 @@ module Aws::CognitoIdentityProvider
2686
2759
  # analytics_endpoint_id: "StringType",
2687
2760
  # },
2688
2761
  # user_context_data: {
2762
+ # ip_address: "StringType",
2689
2763
  # encoded_data: "StringType",
2690
2764
  # },
2691
2765
  # client_metadata: {
@@ -2728,9 +2802,11 @@ module Aws::CognitoIdentityProvider
2728
2802
  # @return [Types::AnalyticsMetadataType]
2729
2803
  #
2730
2804
  # @!attribute [rw] user_context_data
2731
- # Contextual data such as the user's device fingerprint, IP address,
2732
- # or location used for evaluating the risk of an unexpected event by
2733
- # Amazon Cognito advanced security.
2805
+ # Contextual data about your user session, such as the device
2806
+ # fingerprint, IP address, or location. Amazon Cognito advanced
2807
+ # security evaluates the risk of an authentication event based on the
2808
+ # context that your app generates and passes to Amazon Cognito when it
2809
+ # makes API requests.
2734
2810
  # @return [Types::UserContextDataType]
2735
2811
  #
2736
2812
  # @!attribute [rw] client_metadata
@@ -2748,7 +2824,7 @@ module Aws::CognitoIdentityProvider
2748
2824
  # can process the `clientMetadata` value to enhance your workflow for
2749
2825
  # your specific needs.
2750
2826
  #
2751
- # For more information, see [Customizing User Pool Workflows with
2827
+ # For more information, see [ Customizing user pool Workflows with
2752
2828
  # Lambda Triggers][1] in the *Amazon Cognito Developer Guide*.
2753
2829
  #
2754
2830
  # <note markdown="1"> When you use the ClientMetadata parameter, remember that Amazon
@@ -2808,6 +2884,7 @@ module Aws::CognitoIdentityProvider
2808
2884
  # analytics_endpoint_id: "StringType",
2809
2885
  # },
2810
2886
  # user_context_data: {
2887
+ # ip_address: "StringType",
2811
2888
  # encoded_data: "StringType",
2812
2889
  # },
2813
2890
  # client_metadata: {
@@ -2850,9 +2927,11 @@ module Aws::CognitoIdentityProvider
2850
2927
  # @return [Types::AnalyticsMetadataType]
2851
2928
  #
2852
2929
  # @!attribute [rw] user_context_data
2853
- # Contextual data such as the user's device fingerprint, IP address,
2854
- # or location used for evaluating the risk of an unexpected event by
2855
- # Amazon Cognito advanced security.
2930
+ # Contextual data about your user session, such as the device
2931
+ # fingerprint, IP address, or location. Amazon Cognito advanced
2932
+ # security evaluates the risk of an authentication event based on the
2933
+ # context that your app generates and passes to Amazon Cognito when it
2934
+ # makes API requests.
2856
2935
  # @return [Types::UserContextDataType]
2857
2936
  #
2858
2937
  # @!attribute [rw] client_metadata
@@ -2870,7 +2949,7 @@ module Aws::CognitoIdentityProvider
2870
2949
  # process the `clientMetadata` value to enhance your workflow for your
2871
2950
  # specific needs.
2872
2951
  #
2873
- # For more information, see [Customizing User Pool Workflows with
2952
+ # For more information, see [ Customizing user pool Workflows with
2874
2953
  # Lambda Triggers][1] in the *Amazon Cognito Developer Guide*.
2875
2954
  #
2876
2955
  # <note markdown="1"> When you use the ClientMetadata parameter, remember that Amazon
@@ -2935,7 +3014,7 @@ module Aws::CognitoIdentityProvider
2935
3014
  # }
2936
3015
  #
2937
3016
  # @!attribute [rw] ip_address
2938
- # Source IP address of your user.
3017
+ # The source IP address of your user's device.
2939
3018
  # @return [String]
2940
3019
  #
2941
3020
  # @!attribute [rw] server_name
@@ -2951,8 +3030,14 @@ module Aws::CognitoIdentityProvider
2951
3030
  # @return [Array<Types::HttpHeader>]
2952
3031
  #
2953
3032
  # @!attribute [rw] encoded_data
2954
- # Encoded data containing device fingerprinting details collected
2955
- # using the Amazon Cognito context data collection library.
3033
+ # Encoded device-fingerprint details that your app collected with the
3034
+ # Amazon Cognito context data collection library. For more
3035
+ # information, see [Adding user device and session data to API
3036
+ # requests][1].
3037
+ #
3038
+ #
3039
+ #
3040
+ # [1]: https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-adaptive-authentication.html#user-pool-settings-adaptive-authentication-device-fingerprint
2956
3041
  # @return [String]
2957
3042
  #
2958
3043
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/ContextDataType AWS API Documentation
@@ -2998,7 +3083,7 @@ module Aws::CognitoIdentityProvider
2998
3083
  # A non-negative integer value that specifies the precedence of this
2999
3084
  # group relative to the other groups that a user can belong to in the
3000
3085
  # user pool. Zero is the highest precedence value. Groups with lower
3001
- # `Precedence` values take precedence over groups with higher ornull
3086
+ # `Precedence` values take precedence over groups with higher or null
3002
3087
  # `Precedence` values. If a user belongs to two or more groups, it is
3003
3088
  # the group with the lowest precedence value whose role ARN is given
3004
3089
  # in the user's tokens for the `cognito:roles` and
@@ -3011,7 +3096,8 @@ module Aws::CognitoIdentityProvider
3011
3096
  # group. If the two groups have different role ARNs, the
3012
3097
  # `cognito:preferred_role` claim isn't set in users' tokens.
3013
3098
  #
3014
- # The default `Precedence` value is null.
3099
+ # The default `Precedence` value is null. The maximum `Precedence`
3100
+ # value is `2^31-1`.
3015
3101
  # @return [Integer]
3016
3102
  #
3017
3103
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/CreateGroupRequest AWS API Documentation
@@ -3059,16 +3145,16 @@ module Aws::CognitoIdentityProvider
3059
3145
  # @return [String]
3060
3146
  #
3061
3147
  # @!attribute [rw] provider_name
3062
- # The identity provider name.
3148
+ # The IdP name.
3063
3149
  # @return [String]
3064
3150
  #
3065
3151
  # @!attribute [rw] provider_type
3066
- # The identity provider type.
3152
+ # The IdP type.
3067
3153
  # @return [String]
3068
3154
  #
3069
3155
  # @!attribute [rw] provider_details
3070
- # The identity provider details. The following list describes the
3071
- # provider detail keys for each identity provider type.
3156
+ # The IdP details. The following list describes the provider detail
3157
+ # keys for each IdP type.
3072
3158
  #
3073
3159
  # * For Google and Login with Amazon:
3074
3160
  #
@@ -3112,35 +3198,38 @@ module Aws::CognitoIdentityProvider
3112
3198
  #
3113
3199
  # * authorize\_scopes
3114
3200
  #
3115
- # * authorize\_url *if not available from discovery URL specified by
3116
- # oidc\_issuer key*
3201
+ # * The following keys are only present if Amazon Cognito didn't
3202
+ # discover them at the `oidc_issuer` URL.
3203
+ #
3204
+ # * authorize\_url
3205
+ #
3206
+ # * token\_url
3117
3207
  #
3118
- # * token\_url *if not available from discovery URL specified by
3119
- # oidc\_issuer key*
3208
+ # * attributes\_url
3120
3209
  #
3121
- # * attributes\_url *if not available from discovery URL specified
3122
- # by oidc\_issuer key*
3210
+ # * jwks\_uri
3123
3211
  #
3124
- # * jwks\_uri *if not available from discovery URL specified by
3125
- # oidc\_issuer key*
3212
+ # * Amazon Cognito sets the value of the following keys
3213
+ # automatically. They are read-only.
3126
3214
  #
3127
- # * attributes\_url\_add\_attributes *a read-only property that is
3128
- # set automatically*
3215
+ # * attributes\_url\_add\_attributes
3216
+ #
3217
+ # ^
3129
3218
  #
3130
3219
  # * For SAML providers:
3131
3220
  #
3132
- # * MetadataFile OR MetadataURL
3221
+ # * MetadataFile or MetadataURL
3133
3222
  #
3134
- # * IDPSignout (optional)
3223
+ # * IDPSignout *optional*
3135
3224
  # @return [Hash<String,String>]
3136
3225
  #
3137
3226
  # @!attribute [rw] attribute_mapping
3138
- # A mapping of identity provider attributes to standard and custom
3139
- # user pool attributes.
3227
+ # A mapping of IdP attributes to standard and custom user pool
3228
+ # attributes.
3140
3229
  # @return [Hash<String,String>]
3141
3230
  #
3142
3231
  # @!attribute [rw] idp_identifiers
3143
- # A list of identity provider identifiers.
3232
+ # A list of IdP identifiers.
3144
3233
  # @return [Array<String>]
3145
3234
  #
3146
3235
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/CreateIdentityProviderRequest AWS API Documentation
@@ -3157,7 +3246,7 @@ module Aws::CognitoIdentityProvider
3157
3246
  end
3158
3247
 
3159
3248
  # @!attribute [rw] identity_provider
3160
- # The newly created identity provider object.
3249
+ # The newly created IdP object.
3161
3250
  # @return [Types::IdentityProviderType]
3162
3251
  #
3163
3252
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/CreateIdentityProviderResponse AWS API Documentation
@@ -3311,6 +3400,7 @@ module Aws::CognitoIdentityProvider
3311
3400
  # },
3312
3401
  # prevent_user_existence_errors: "LEGACY", # accepts LEGACY, ENABLED
3313
3402
  # enable_token_revocation: false,
3403
+ # enable_propagate_additional_user_context_data: false,
3314
3404
  # }
3315
3405
  #
3316
3406
  # @!attribute [rw] user_pool_id
@@ -3328,26 +3418,53 @@ module Aws::CognitoIdentityProvider
3328
3418
  # @return [Boolean]
3329
3419
  #
3330
3420
  # @!attribute [rw] refresh_token_validity
3331
- # The time limit, in days, after which the refresh token is no longer
3332
- # valid and can't be used.
3421
+ # The refresh token time limit. After this limit expires, your user
3422
+ # can't use their refresh token. To specify the time unit for
3423
+ # `RefreshTokenValidity` as `seconds`, `minutes`, `hours`, or `days`,
3424
+ # set a `TokenValidityUnits` value in your API request.
3425
+ #
3426
+ # For example, when you set `RefreshTokenValidity` as `10` and
3427
+ # `TokenValidityUnits` as `days`, your user can refresh their session
3428
+ # and retrieve new access and ID tokens for 10 days.
3429
+ #
3430
+ # The default time unit for `RefreshTokenValidity` in an API request
3431
+ # is days. You can't set `RefreshTokenValidity` to 0. If you do,
3432
+ # Amazon Cognito overrides the value with the default value of 30
3433
+ # days. *Valid range* is displayed below in seconds.
3333
3434
  # @return [Integer]
3334
3435
  #
3335
3436
  # @!attribute [rw] access_token_validity
3336
- # The time limit, between 5 minutes and 1 day, after which the access
3337
- # token is no longer valid and can't be used. If you supply a
3338
- # TokenValidityUnits value, you will override the default time unit.
3437
+ # The access token time limit. After this limit expires, your user
3438
+ # can't use their access token. To specify the time unit for
3439
+ # `AccessTokenValidity` as `seconds`, `minutes`, `hours`, or `days`,
3440
+ # set a `TokenValidityUnits` value in your API request.
3441
+ #
3442
+ # For example, when you set `AccessTokenValidity` to `10` and
3443
+ # `TokenValidityUnits` to `hours`, your user can authorize access with
3444
+ # their access token for 10 hours.
3445
+ #
3446
+ # The default time unit for `AccessTokenValidity` in an API request is
3447
+ # hours. *Valid range* is displayed below in seconds.
3339
3448
  # @return [Integer]
3340
3449
  #
3341
3450
  # @!attribute [rw] id_token_validity
3342
- # The time limit, between 5 minutes and 1 day, after which the access
3343
- # token is no longer valid and can't be used. If you supply a
3344
- # TokenValidityUnits value, you will override the default time unit.
3451
+ # The ID token time limit. After this limit expires, your user can't
3452
+ # use their ID token. To specify the time unit for `IdTokenValidity`
3453
+ # as `seconds`, `minutes`, `hours`, or `days`, set a
3454
+ # `TokenValidityUnits` value in your API request.
3455
+ #
3456
+ # For example, when you set `IdTokenValidity` as `10` and
3457
+ # `TokenValidityUnits` as `hours`, your user can authenticate their
3458
+ # session with their ID token for 10 hours.
3459
+ #
3460
+ # The default time unit for `AccessTokenValidity` in an API request is
3461
+ # hours. *Valid range* is displayed below in seconds.
3345
3462
  # @return [Integer]
3346
3463
  #
3347
3464
  # @!attribute [rw] token_validity_units
3348
- # The units in which the validity times are represented. Default for
3349
- # RefreshToken is days, and default for ID and access tokens are
3350
- # hours.
3465
+ # The units in which the validity times are represented. The default
3466
+ # unit for RefreshToken is days, and default for ID and access tokens
3467
+ # are hours.
3351
3468
  # @return [Types::TokenValidityUnitsType]
3352
3469
  #
3353
3470
  # @!attribute [rw] read_attributes
@@ -3357,14 +3474,13 @@ module Aws::CognitoIdentityProvider
3357
3474
  # @!attribute [rw] write_attributes
3358
3475
  # The user pool attributes that the app client can write to.
3359
3476
  #
3360
- # If your app client allows users to sign in through an identity
3361
- # provider, this array must include all attributes that are mapped to
3362
- # identity provider attributes. Amazon Cognito updates mapped
3363
- # attributes when users sign in to your application through an
3364
- # identity provider. If your app client lacks write access to a mapped
3365
- # attribute, Amazon Cognito throws an error when it tries to update
3366
- # the attribute. For more information, see [Specifying Identity
3367
- # Provider Attribute Mappings for Your User Pool][1].
3477
+ # If your app client allows users to sign in through an IdP, this
3478
+ # array must include all attributes that you have mapped to IdP
3479
+ # attributes. Amazon Cognito updates mapped attributes when users sign
3480
+ # in to your application through an IdP. If your app client does not
3481
+ # have write access to a mapped attribute, Amazon Cognito throws an
3482
+ # error when it tries to update the attribute. For more information,
3483
+ # see [Specifying IdP Attribute Mappings for Your user pool][1].
3368
3484
  #
3369
3485
  #
3370
3486
  #
@@ -3374,10 +3490,13 @@ module Aws::CognitoIdentityProvider
3374
3490
  # @!attribute [rw] explicit_auth_flows
3375
3491
  # The authentication flows that are supported by the user pool
3376
3492
  # clients. Flow names without the `ALLOW_` prefix are no longer
3377
- # supported, in favor of new names with the `ALLOW_` prefix. Note that
3378
- # values with `ALLOW_` prefix must be used only along with the
3493
+ # supported, in favor of new names with the `ALLOW_` prefix.
3494
+ #
3495
+ # <note markdown="1"> Values with `ALLOW_` prefix must be used only along with the
3379
3496
  # `ALLOW_` prefix.
3380
3497
  #
3498
+ # </note>
3499
+ #
3381
3500
  # Valid values include:
3382
3501
  #
3383
3502
  # * `ALLOW_ADMIN_USER_PASSWORD_AUTH`\: Enable admin based user
@@ -3397,17 +3516,21 @@ module Aws::CognitoIdentityProvider
3397
3516
  # * `ALLOW_USER_SRP_AUTH`\: Enable SRP-based authentication.
3398
3517
  #
3399
3518
  # * `ALLOW_REFRESH_TOKEN_AUTH`\: Enable authflow to refresh tokens.
3519
+ #
3520
+ # If you don't specify a value for `ExplicitAuthFlows`, your app
3521
+ # client activates the `ALLOW_USER_SRP_AUTH` and `ALLOW_CUSTOM_AUTH`
3522
+ # authentication flows.
3400
3523
  # @return [Array<String>]
3401
3524
  #
3402
3525
  # @!attribute [rw] supported_identity_providers
3403
- # A list of provider names for the identity providers that are
3404
- # supported on this client. The following are supported: `COGNITO`,
3405
- # `Facebook`, `Google` and `LoginWithAmazon`.
3526
+ # A list of provider names for the IdPs that this client supports. The
3527
+ # following are supported: `COGNITO`, `Facebook`, `Google`
3528
+ # `LoginWithAmazon`, and the names of your own SAML and OIDC
3529
+ # providers.
3406
3530
  # @return [Array<String>]
3407
3531
  #
3408
3532
  # @!attribute [rw] callback_urls
3409
- # A list of allowed redirect (callback) URLs for the identity
3410
- # providers.
3533
+ # A list of allowed redirect (callback) URLs for the IdPs.
3411
3534
  #
3412
3535
  # A redirect URI must:
3413
3536
  #
@@ -3430,7 +3553,7 @@ module Aws::CognitoIdentityProvider
3430
3553
  # @return [Array<String>]
3431
3554
  #
3432
3555
  # @!attribute [rw] logout_urls
3433
- # A list of allowed logout URLs for the identity providers.
3556
+ # A list of allowed logout URLs for the IdPs.
3434
3557
  # @return [Array<String>]
3435
3558
  #
3436
3559
  # @!attribute [rw] default_redirect_uri
@@ -3459,22 +3582,28 @@ module Aws::CognitoIdentityProvider
3459
3582
  # @!attribute [rw] allowed_o_auth_flows
3460
3583
  # The allowed OAuth flows.
3461
3584
  #
3462
- # Set to `code` to initiate a code grant flow, which provides an
3463
- # authorization code as the response. This code can be exchanged for
3464
- # access tokens with the token endpoint.
3585
+ # code
3586
+ #
3587
+ # : Use a code grant flow, which provides an authorization code as the
3588
+ # response. This code can be exchanged for access tokens with the
3589
+ # `/oauth2/token` endpoint.
3590
+ #
3591
+ # implicit
3465
3592
  #
3466
- # Set to `implicit` to specify that the client should get the access
3467
- # token (and, optionally, ID token, based on scopes) directly.
3593
+ # : Issue the access token (and, optionally, ID token, based on
3594
+ # scopes) directly to your user.
3468
3595
  #
3469
- # Set to `client_credentials` to specify that the client should get
3470
- # the access token (and, optionally, ID token, based on scopes) from
3471
- # the token endpoint using a combination of client and client\_secret.
3596
+ # client\_credentials
3597
+ #
3598
+ # : Issue the access token from the `/oauth2/token` endpoint directly
3599
+ # to a non-person user using a combination of the client ID and
3600
+ # client secret.
3472
3601
  # @return [Array<String>]
3473
3602
  #
3474
3603
  # @!attribute [rw] allowed_o_auth_scopes
3475
- # The allowed OAuth scopes. Possible values provided by OAuth are:
3604
+ # The allowed OAuth scopes. Possible values provided by OAuth are
3476
3605
  # `phone`, `email`, `openid`, and `profile`. Possible values provided
3477
- # by Amazon Web Services are: `aws.cognito.signin.user.admin`. Custom
3606
+ # by Amazon Web Services are `aws.cognito.signin.user.admin`. Custom
3478
3607
  # scopes created in Resource Servers are also supported.
3479
3608
  # @return [Array<String>]
3480
3609
  #
@@ -3484,14 +3613,14 @@ module Aws::CognitoIdentityProvider
3484
3613
  # @return [Boolean]
3485
3614
  #
3486
3615
  # @!attribute [rw] analytics_configuration
3487
- # The Amazon Pinpoint analytics configuration for collecting metrics
3488
- # for this user pool.
3616
+ # The user pool analytics configuration for collecting metrics and
3617
+ # sending them to your Amazon Pinpoint campaign.
3489
3618
  #
3490
- # <note markdown="1"> In Amazon Web Services Regions where isn't available, User Pools
3491
- # only supports sending events to Amazon Pinpoint projects in Amazon
3492
- # Web Services Region us-east-1. In Regions where is available, User
3493
- # Pools will support sending events to Amazon Pinpoint projects within
3494
- # that same Region.
3619
+ # <note markdown="1"> In Amazon Web Services Regions where Amazon Pinpoint isn't
3620
+ # available, user pools only support sending events to Amazon Pinpoint
3621
+ # projects in Amazon Web Services Region us-east-1. In Regions where
3622
+ # Amazon Pinpoint is available, user pools support sending events to
3623
+ # Amazon Pinpoint projects within that same Region.
3495
3624
  #
3496
3625
  # </note>
3497
3626
  # @return [Types::AnalyticsConfigurationType]
@@ -3527,6 +3656,20 @@ module Aws::CognitoIdentityProvider
3527
3656
  # [1]: https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_RevokeToken.html
3528
3657
  # @return [Boolean]
3529
3658
  #
3659
+ # @!attribute [rw] enable_propagate_additional_user_context_data
3660
+ # Activates the propagation of additional user context data. For more
3661
+ # information about propagation of user context data, see [ Adding
3662
+ # advanced security to a user pool][1]. If you don’t include this
3663
+ # parameter, you can't send device fingerprint information, including
3664
+ # source IP address, to Amazon Cognito advanced security. You can only
3665
+ # activate `EnablePropagateAdditionalUserContextData` in an app client
3666
+ # that has a client secret.
3667
+ #
3668
+ #
3669
+ #
3670
+ # [1]: https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-advanced-security.html
3671
+ # @return [Boolean]
3672
+ #
3530
3673
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/CreateUserPoolClientRequest AWS API Documentation
3531
3674
  #
3532
3675
  class CreateUserPoolClientRequest < Struct.new(
@@ -3549,7 +3692,8 @@ module Aws::CognitoIdentityProvider
3549
3692
  :allowed_o_auth_flows_user_pool_client,
3550
3693
  :analytics_configuration,
3551
3694
  :prevent_user_existence_errors,
3552
- :enable_token_revocation)
3695
+ :enable_token_revocation,
3696
+ :enable_propagate_additional_user_context_data)
3553
3697
  SENSITIVE = []
3554
3698
  include Aws::Structure
3555
3699
  end
@@ -3682,6 +3826,9 @@ module Aws::CognitoIdentityProvider
3682
3826
  # },
3683
3827
  # sms_authentication_message: "SmsVerificationMessageType",
3684
3828
  # mfa_configuration: "OFF", # accepts OFF, ON, OPTIONAL
3829
+ # user_attribute_update_settings: {
3830
+ # attributes_require_verification_before_update: ["phone_number"], # accepts phone_number, email
3831
+ # },
3685
3832
  # device_configuration: {
3686
3833
  # challenge_required_on_new_device: false,
3687
3834
  # device_only_remembered_on_user_prompt: false,
@@ -3696,6 +3843,7 @@ module Aws::CognitoIdentityProvider
3696
3843
  # sms_configuration: {
3697
3844
  # sns_caller_arn: "ArnType", # required
3698
3845
  # external_id: "StringType",
3846
+ # sns_region: "RegionCodeType",
3699
3847
  # },
3700
3848
  # user_pool_tags: {
3701
3849
  # "TagKeysType" => "TagValueType",
@@ -3825,16 +3973,36 @@ module Aws::CognitoIdentityProvider
3825
3973
  # Specifies MFA configuration details.
3826
3974
  # @return [String]
3827
3975
  #
3976
+ # @!attribute [rw] user_attribute_update_settings
3977
+ # The settings for updates to user attributes. These settings include
3978
+ # the property `AttributesRequireVerificationBeforeUpdate`, a
3979
+ # user-pool setting that tells Amazon Cognito how to handle changes to
3980
+ # the value of your users' email address and phone number attributes.
3981
+ # For more information, see [ Verifying updates to to email addresses
3982
+ # and phone numbers][1].
3983
+ #
3984
+ #
3985
+ #
3986
+ # [1]: https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-email-phone-verification.html#user-pool-settings-verifications-verify-attribute-updates
3987
+ # @return [Types::UserAttributeUpdateSettingsType]
3988
+ #
3828
3989
  # @!attribute [rw] device_configuration
3829
3990
  # The device configuration.
3830
3991
  # @return [Types::DeviceConfigurationType]
3831
3992
  #
3832
3993
  # @!attribute [rw] email_configuration
3833
- # The email configuration.
3994
+ # The email configuration of your user pool. The email configuration
3995
+ # type sets your preferred sending method, Amazon Web Services Region,
3996
+ # and sender for messages from your user pool.
3834
3997
  # @return [Types::EmailConfigurationType]
3835
3998
  #
3836
3999
  # @!attribute [rw] sms_configuration
3837
- # The SMS configuration.
4000
+ # The SMS configuration with the settings that your Amazon Cognito
4001
+ # user pool must use to send an SMS message from your Amazon Web
4002
+ # Services account through Amazon Simple Notification Service. To send
4003
+ # SMS messages with Amazon SNS in the Amazon Web Services Region that
4004
+ # you want, the Amazon Cognito user pool uses an Identity and Access
4005
+ # Management (IAM) role in your Amazon Web Services account.
3838
4006
  # @return [Types::SmsConfigurationType]
3839
4007
  #
3840
4008
  # @!attribute [rw] user_pool_tags
@@ -3895,6 +4063,7 @@ module Aws::CognitoIdentityProvider
3895
4063
  :verification_message_template,
3896
4064
  :sms_authentication_message,
3897
4065
  :mfa_configuration,
4066
+ :user_attribute_update_settings,
3898
4067
  :device_configuration,
3899
4068
  :email_configuration,
3900
4069
  :sms_configuration,
@@ -4045,7 +4214,7 @@ module Aws::CognitoIdentityProvider
4045
4214
  # @return [String]
4046
4215
  #
4047
4216
  # @!attribute [rw] provider_name
4048
- # The identity provider name.
4217
+ # The IdP name.
4049
4218
  # @return [String]
4050
4219
  #
4051
4220
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/DeleteIdentityProviderRequest AWS API Documentation
@@ -4101,7 +4270,8 @@ module Aws::CognitoIdentityProvider
4101
4270
  # @return [Array<String>]
4102
4271
  #
4103
4272
  # @!attribute [rw] access_token
4104
- # The access token used in the request to delete user attributes.
4273
+ # A valid access token that Amazon Cognito issued to the user whose
4274
+ # attributes you want to delete.
4105
4275
  # @return [String]
4106
4276
  #
4107
4277
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/DeleteUserAttributesRequest AWS API Documentation
@@ -4209,7 +4379,8 @@ module Aws::CognitoIdentityProvider
4209
4379
  # }
4210
4380
  #
4211
4381
  # @!attribute [rw] access_token
4212
- # The access token from a request to delete a user.
4382
+ # A valid access token that Amazon Cognito issued to the user whose
4383
+ # user profile you want to delete.
4213
4384
  # @return [String]
4214
4385
  #
4215
4386
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/DeleteUserRequest AWS API Documentation
@@ -4233,7 +4404,7 @@ module Aws::CognitoIdentityProvider
4233
4404
  # @return [String]
4234
4405
  #
4235
4406
  # @!attribute [rw] provider_name
4236
- # The identity provider name.
4407
+ # The IdP name.
4237
4408
  # @return [String]
4238
4409
  #
4239
4410
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/DescribeIdentityProviderRequest AWS API Documentation
@@ -4246,7 +4417,7 @@ module Aws::CognitoIdentityProvider
4246
4417
  end
4247
4418
 
4248
4419
  # @!attribute [rw] identity_provider
4249
- # The identity provider that was deleted.
4420
+ # The IdP that was deleted.
4250
4421
  # @return [Types::IdentityProviderType]
4251
4422
  #
4252
4423
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/DescribeIdentityProviderResponse AWS API Documentation
@@ -4544,7 +4715,11 @@ module Aws::CognitoIdentityProvider
4544
4715
  # @return [String]
4545
4716
  #
4546
4717
  # @!attribute [rw] salt
4547
- # The salt.
4718
+ # The [salt][1]
4719
+ #
4720
+ #
4721
+ #
4722
+ # [1]: https://en.wikipedia.org/wiki/Salt_(cryptography)
4548
4723
  # @return [String]
4549
4724
  #
4550
4725
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/DeviceSecretVerifierConfigType AWS API Documentation
@@ -4658,11 +4833,15 @@ module Aws::CognitoIdentityProvider
4658
4833
  include Aws::Structure
4659
4834
  end
4660
4835
 
4661
- # The email configuration type.
4836
+ # The email configuration of your user pool. The email configuration
4837
+ # type sets your preferred sending method, Amazon Web Services Region,
4838
+ # and sender for messages from your user pool.
4662
4839
  #
4663
- # <note markdown="1"> Amazon Cognito has specific Regions for use with Amazon Simple Email
4664
- # Service. For more information on the supported Regions, see [Email
4665
- # settings for Amazon Cognito user pools][1].
4840
+ # <note markdown="1"> Amazon Cognito can send email messages with Amazon Simple Email
4841
+ # Service resources in the Amazon Web Services Region where you created
4842
+ # your user pool, and in alternate Regions in some cases. For more
4843
+ # information on the supported Regions, see [Email settings for Amazon
4844
+ # Cognito user pools][1].
4666
4845
  #
4667
4846
  # </note>
4668
4847
  #
@@ -4692,6 +4871,17 @@ module Aws::CognitoIdentityProvider
4692
4871
  #
4693
4872
  # * If you specify `DEVELOPER`, Amazon Cognito emails your users with
4694
4873
  # this address by calling Amazon SES on your behalf.
4874
+ #
4875
+ # The Region value of the `SourceArn` parameter must indicate a
4876
+ # supported Amazon Web Services Region of your user pool. Typically,
4877
+ # the Region in the `SourceArn` and the user pool Region are the same.
4878
+ # For more information, see [Amazon SES email configuration
4879
+ # regions][1] in the [Amazon Cognito Developer Guide][2].
4880
+ #
4881
+ #
4882
+ #
4883
+ # [1]: https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-email.html#user-pool-email-developer-region-mapping
4884
+ # [2]: https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools.html
4695
4885
  # @return [String]
4696
4886
  #
4697
4887
  # @!attribute [rw] reply_to_email_address
@@ -4699,9 +4889,9 @@ module Aws::CognitoIdentityProvider
4699
4889
  # @return [String]
4700
4890
  #
4701
4891
  # @!attribute [rw] email_sending_account
4702
- # Specifies whether Amazon Cognito emails your users by using its
4703
- # built-in email functionality or your Amazon Simple Email Service
4704
- # email configuration. Specify one of the following values:
4892
+ # Specifies whether Amazon Cognito uses its built-in functionality to
4893
+ # send your users email messages, or uses your Amazon Simple Email
4894
+ # Service email configuration. Specify one of the following values:
4705
4895
  #
4706
4896
  # COGNITO\_DEFAULT
4707
4897
  #
@@ -4721,29 +4911,6 @@ module Aws::CognitoIdentityProvider
4721
4911
  # of an Amazon SES verified email address for the `SourceArn`
4722
4912
  # parameter.
4723
4913
  #
4724
- # If EmailSendingAccount is COGNITO\_DEFAULT, you can't use the
4725
- # following parameters:
4726
- #
4727
- # * EmailVerificationMessage
4728
- #
4729
- # * EmailVerificationSubject
4730
- #
4731
- # * InviteMessageTemplate.EmailMessage
4732
- #
4733
- # * InviteMessageTemplate.EmailSubject
4734
- #
4735
- # * VerificationMessageTemplate.EmailMessage
4736
- #
4737
- # * VerificationMessageTemplate.EmailMessageByLink
4738
- #
4739
- # * VerificationMessageTemplate.EmailSubject,
4740
- #
4741
- # * VerificationMessageTemplate.EmailSubjectByLink
4742
- #
4743
- # <note markdown="1"> DEVELOPER EmailSendingAccount is required.
4744
- #
4745
- # </note>
4746
- #
4747
4914
  # DEVELOPER
4748
4915
  #
4749
4916
  # : When Amazon Cognito emails your users, it uses your Amazon SES
@@ -4753,8 +4920,8 @@ module Aws::CognitoIdentityProvider
4753
4920
  # to your Amazon SES verified email address in your Amazon Web
4754
4921
  # Services account.
4755
4922
  #
4756
- # If you use this option, you must provide the ARN of an Amazon SES
4757
- # verified email address for the `SourceArn` parameter.
4923
+ # If you use this option, provide the ARN of an Amazon SES verified
4924
+ # email address for the `SourceArn` parameter.
4758
4925
  #
4759
4926
  # Before Amazon Cognito can email your users, it requires additional
4760
4927
  # permissions to call Amazon SES on your behalf. When you update
@@ -4787,16 +4954,20 @@ module Aws::CognitoIdentityProvider
4787
4954
  # configuration set are applied to the email. Configuration sets can
4788
4955
  # be used to apply the following types of rules to emails:
4789
4956
  #
4790
- # * Event publishing – Amazon Simple Email Service can track the
4791
- # number of send, delivery, open, click, bounce, and complaint
4792
- # events for each email sent. Use event publishing to send
4793
- # information about these events to other Amazon Web Services
4794
- # services such as and Amazon CloudWatch.
4957
+ # Event publishing
4958
+ #
4959
+ # : Amazon Simple Email Service can track the number of send,
4960
+ # delivery, open, click, bounce, and complaint events for each email
4961
+ # sent. Use event publishing to send information about these events
4962
+ # to other Amazon Web Services services such as and Amazon
4963
+ # CloudWatch
4795
4964
  #
4796
- # * IP pool management – When leasing dedicated IP addresses with
4797
- # Amazon Simple Email Service, you can create groups of IP
4798
- # addresses, called dedicated IP pools. You can then associate the
4799
- # dedicated IP pools with configuration sets.
4965
+ # IP pool management
4966
+ #
4967
+ # : When leasing dedicated IP addresses with Amazon Simple Email
4968
+ # Service, you can create groups of IP addresses, called dedicated
4969
+ # IP pools. You can then associate the dedicated IP pools with
4970
+ # configuration sets.
4800
4971
  # @return [String]
4801
4972
  #
4802
4973
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/EmailConfigurationType AWS API Documentation
@@ -4830,7 +5001,7 @@ module Aws::CognitoIdentityProvider
4830
5001
  # request.
4831
5002
  #
4832
5003
  # @!attribute [rw] ip_address
4833
- # The user's IP address.
5004
+ # The source IP address of your user's device.
4834
5005
  # @return [String]
4835
5006
  #
4836
5007
  # @!attribute [rw] device_name
@@ -4935,7 +5106,8 @@ module Aws::CognitoIdentityProvider
4935
5106
  # }
4936
5107
  #
4937
5108
  # @!attribute [rw] access_token
4938
- # The access token for the forgotten device request.
5109
+ # A valid access token that Amazon Cognito issued to the user whose
5110
+ # registered device you want to forget.
4939
5111
  # @return [String]
4940
5112
  #
4941
5113
  # @!attribute [rw] device_key
@@ -4960,6 +5132,7 @@ module Aws::CognitoIdentityProvider
4960
5132
  # client_id: "ClientIdType", # required
4961
5133
  # secret_hash: "SecretHashType",
4962
5134
  # user_context_data: {
5135
+ # ip_address: "StringType",
4963
5136
  # encoded_data: "StringType",
4964
5137
  # },
4965
5138
  # username: "UsernameType", # required
@@ -4982,9 +5155,11 @@ module Aws::CognitoIdentityProvider
4982
5155
  # @return [String]
4983
5156
  #
4984
5157
  # @!attribute [rw] user_context_data
4985
- # Contextual data such as the user's device fingerprint, IP address,
4986
- # or location used for evaluating the risk of an unexpected event by
4987
- # Amazon Cognito advanced security.
5158
+ # Contextual data about your user session, such as the device
5159
+ # fingerprint, IP address, or location. Amazon Cognito advanced
5160
+ # security evaluates the risk of an authentication event based on the
5161
+ # context that your app generates and passes to Amazon Cognito when it
5162
+ # makes API requests.
4988
5163
  # @return [Types::UserContextDataType]
4989
5164
  #
4990
5165
  # @!attribute [rw] username
@@ -4993,8 +5168,8 @@ module Aws::CognitoIdentityProvider
4993
5168
  # @return [String]
4994
5169
  #
4995
5170
  # @!attribute [rw] analytics_metadata
4996
- # The Amazon Pinpoint analytics metadata for collecting metrics for
4997
- # `ForgotPassword` calls.
5171
+ # The Amazon Pinpoint analytics metadata that contributes to your
5172
+ # metrics for `ForgotPassword` calls.
4998
5173
  # @return [Types::AnalyticsMetadataType]
4999
5174
  #
5000
5175
  # @!attribute [rw] client_metadata
@@ -5013,7 +5188,7 @@ module Aws::CognitoIdentityProvider
5013
5188
  # `clientMetadata` value to enhance your workflow for your specific
5014
5189
  # needs.
5015
5190
  #
5016
- # For more information, see [Customizing User Pool Workflows with
5191
+ # For more information, see [ Customizing user pool Workflows with
5017
5192
  # Lambda Triggers][1] in the *Amazon Cognito Developer Guide*.
5018
5193
  #
5019
5194
  # <note markdown="1"> When you use the ClientMetadata parameter, remember that Amazon
@@ -5049,8 +5224,7 @@ module Aws::CognitoIdentityProvider
5049
5224
  include Aws::Structure
5050
5225
  end
5051
5226
 
5052
- # Respresents the response from the server regarding the request to
5053
- # reset a password.
5227
+ # The response from Amazon Cognito to a request to reset a password.
5054
5228
  #
5055
5229
  # @!attribute [rw] code_delivery_details
5056
5230
  # The code delivery details returned by the server in response to the
@@ -5124,7 +5298,8 @@ module Aws::CognitoIdentityProvider
5124
5298
  # @return [String]
5125
5299
  #
5126
5300
  # @!attribute [rw] access_token
5127
- # The access token.
5301
+ # A valid access token that Amazon Cognito issued to the user whose
5302
+ # device information you want to request.
5128
5303
  # @return [String]
5129
5304
  #
5130
5305
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/GetDeviceRequest AWS API Documentation
@@ -5200,7 +5375,7 @@ module Aws::CognitoIdentityProvider
5200
5375
  # @return [String]
5201
5376
  #
5202
5377
  # @!attribute [rw] idp_identifier
5203
- # The identity provider ID.
5378
+ # The IdP identifier.
5204
5379
  # @return [String]
5205
5380
  #
5206
5381
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/GetIdentityProviderByIdentifierRequest AWS API Documentation
@@ -5213,7 +5388,7 @@ module Aws::CognitoIdentityProvider
5213
5388
  end
5214
5389
 
5215
5390
  # @!attribute [rw] identity_provider
5216
- # The identity provider object.
5391
+ # The IdP object.
5217
5392
  # @return [Types::IdentityProviderType]
5218
5393
  #
5219
5394
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/GetIdentityProviderByIdentifierResponse AWS API Documentation
@@ -5310,8 +5485,8 @@ module Aws::CognitoIdentityProvider
5310
5485
  # }
5311
5486
  #
5312
5487
  # @!attribute [rw] access_token
5313
- # The access token returned by the server response to get the user
5314
- # attribute verification code.
5488
+ # A non-expired access token for the user whose attribute verification
5489
+ # code you want to generate.
5315
5490
  # @return [String]
5316
5491
  #
5317
5492
  # @!attribute [rw] attribute_name
@@ -5334,7 +5509,7 @@ module Aws::CognitoIdentityProvider
5334
5509
  # Lambda, you can process the `clientMetadata` value to enhance your
5335
5510
  # workflow for your specific needs.
5336
5511
  #
5337
- # For more information, see [Customizing User Pool Workflows with
5512
+ # For more information, see [ Customizing user pool Workflows with
5338
5513
  # Lambda Triggers][1] in the *Amazon Cognito Developer Guide*.
5339
5514
  #
5340
5515
  # <note markdown="1"> When you use the ClientMetadata parameter, remember that Amazon
@@ -5441,8 +5616,8 @@ module Aws::CognitoIdentityProvider
5441
5616
  # }
5442
5617
  #
5443
5618
  # @!attribute [rw] access_token
5444
- # The access token returned by the server response to get information
5445
- # about the user.
5619
+ # A non-expired access token for the user whose information you want
5620
+ # to query.
5446
5621
  # @return [String]
5447
5622
  #
5448
5623
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/GetUserRequest AWS API Documentation
@@ -5507,7 +5682,8 @@ module Aws::CognitoIdentityProvider
5507
5682
  # }
5508
5683
  #
5509
5684
  # @!attribute [rw] access_token
5510
- # The access token.
5685
+ # A valid access token that Amazon Cognito issued to the user who you
5686
+ # want to sign out.
5511
5687
  # @return [String]
5512
5688
  #
5513
5689
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/GlobalSignOutRequest AWS API Documentation
@@ -5625,23 +5801,23 @@ module Aws::CognitoIdentityProvider
5625
5801
  include Aws::Structure
5626
5802
  end
5627
5803
 
5628
- # A container for information about an identity provider.
5804
+ # A container for information about an IdP.
5629
5805
  #
5630
5806
  # @!attribute [rw] user_pool_id
5631
5807
  # The user pool ID.
5632
5808
  # @return [String]
5633
5809
  #
5634
5810
  # @!attribute [rw] provider_name
5635
- # The identity provider name.
5811
+ # The IdP name.
5636
5812
  # @return [String]
5637
5813
  #
5638
5814
  # @!attribute [rw] provider_type
5639
- # The identity provider type.
5815
+ # The IdP type.
5640
5816
  # @return [String]
5641
5817
  #
5642
5818
  # @!attribute [rw] provider_details
5643
- # The identity provider details. The following list describes the
5644
- # provider detail keys for each identity provider type.
5819
+ # The IdP details. The following list describes the provider detail
5820
+ # keys for each IdP type.
5645
5821
  #
5646
5822
  # * For Google and Login with Amazon:
5647
5823
  #
@@ -5671,6 +5847,9 @@ module Aws::CognitoIdentityProvider
5671
5847
  #
5672
5848
  # * private\_key
5673
5849
  #
5850
+ # *You can submit a private\_key when you add or update an IdP.
5851
+ # Describe operations don't return the private key.*
5852
+ #
5674
5853
  # * authorize\_scopes
5675
5854
  #
5676
5855
  # * For OIDC providers:
@@ -5685,43 +5864,46 @@ module Aws::CognitoIdentityProvider
5685
5864
  #
5686
5865
  # * authorize\_scopes
5687
5866
  #
5688
- # * authorize\_url *if not available from discovery URL specified by
5689
- # oidc\_issuer key*
5867
+ # * The following keys are only present if Amazon Cognito didn't
5868
+ # discover them at the `oidc_issuer` URL.
5869
+ #
5870
+ # * authorize\_url
5690
5871
  #
5691
- # * token\_url *if not available from discovery URL specified by
5692
- # oidc\_issuer key*
5872
+ # * token\_url
5693
5873
  #
5694
- # * attributes\_url *if not available from discovery URL specified
5695
- # by oidc\_issuer key*
5874
+ # * attributes\_url
5696
5875
  #
5697
- # * jwks\_uri *if not available from discovery URL specified by
5698
- # oidc\_issuer key*
5876
+ # * jwks\_uri
5699
5877
  #
5700
- # * attributes\_url\_add\_attributes *a read-only property that is
5701
- # set automatically*
5878
+ # * Amazon Cognito sets the value of the following keys
5879
+ # automatically. They are read-only.
5880
+ #
5881
+ # * attributes\_url\_add\_attributes
5882
+ #
5883
+ # ^
5702
5884
  #
5703
5885
  # * For SAML providers:
5704
5886
  #
5705
5887
  # * MetadataFile or MetadataURL
5706
5888
  #
5707
- # * IDPSignOut *optional*
5889
+ # * IDPSignout *optional*
5708
5890
  # @return [Hash<String,String>]
5709
5891
  #
5710
5892
  # @!attribute [rw] attribute_mapping
5711
- # A mapping of identity provider attributes to standard and custom
5712
- # user pool attributes.
5893
+ # A mapping of IdP attributes to standard and custom user pool
5894
+ # attributes.
5713
5895
  # @return [Hash<String,String>]
5714
5896
  #
5715
5897
  # @!attribute [rw] idp_identifiers
5716
- # A list of identity provider identifiers.
5898
+ # A list of IdP identifiers.
5717
5899
  # @return [Array<String>]
5718
5900
  #
5719
5901
  # @!attribute [rw] last_modified_date
5720
- # The date the identity provider was last modified.
5902
+ # The date the IdP was last modified.
5721
5903
  # @return [Time]
5722
5904
  #
5723
5905
  # @!attribute [rw] creation_date
5724
- # The date the identity provider was created.
5906
+ # The date the IdP was created.
5725
5907
  # @return [Time]
5726
5908
  #
5727
5909
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/IdentityProviderType AWS API Documentation
@@ -5757,6 +5939,7 @@ module Aws::CognitoIdentityProvider
5757
5939
  # analytics_endpoint_id: "StringType",
5758
5940
  # },
5759
5941
  # user_context_data: {
5942
+ # ip_address: "StringType",
5760
5943
  # encoded_data: "StringType",
5761
5944
  # },
5762
5945
  # }
@@ -5785,10 +5968,10 @@ module Aws::CognitoIdentityProvider
5785
5968
  #
5786
5969
  # * `CUSTOM_AUTH`\: Custom authentication flow.
5787
5970
  #
5788
- # * `USER_PASSWORD_AUTH`\: Non-SRP authentication flow; USERNAME and
5789
- # PASSWORD are passed directly. If a user migration Lambda trigger
5971
+ # * `USER_PASSWORD_AUTH`\: Non-SRP authentication flow; user name and
5972
+ # password are passed directly. If a user migration Lambda trigger
5790
5973
  # is set, this flow will invoke the user migration Lambda if it
5791
- # doesn't find the USERNAME in the user pool.
5974
+ # doesn't find the user name in the user pool.
5792
5975
  #
5793
5976
  # `ADMIN_NO_SRP_AUTH` isn't a valid value.
5794
5977
  # @return [String]
@@ -5852,7 +6035,7 @@ module Aws::CognitoIdentityProvider
5852
6035
  #
5853
6036
  # * Verify auth challenge
5854
6037
  #
5855
- # For more information, see [Customizing User Pool Workflows with
6038
+ # For more information, see [ Customizing user pool Workflows with
5856
6039
  # Lambda Triggers][1] in the *Amazon Cognito Developer Guide*.
5857
6040
  #
5858
6041
  # <note markdown="1"> When you use the ClientMetadata parameter, remember that Amazon
@@ -5880,14 +6063,16 @@ module Aws::CognitoIdentityProvider
5880
6063
  # @return [String]
5881
6064
  #
5882
6065
  # @!attribute [rw] analytics_metadata
5883
- # The Amazon Pinpoint analytics metadata for collecting metrics for
5884
- # `InitiateAuth` calls.
6066
+ # The Amazon Pinpoint analytics metadata that contributes to your
6067
+ # metrics for `InitiateAuth` calls.
5885
6068
  # @return [Types::AnalyticsMetadataType]
5886
6069
  #
5887
6070
  # @!attribute [rw] user_context_data
5888
- # Contextual data such as the user's device fingerprint, IP address,
5889
- # or location used for evaluating the risk of an unexpected event by
5890
- # Amazon Cognito advanced security.
6071
+ # Contextual data about your user session, such as the device
6072
+ # fingerprint, IP address, or location. Amazon Cognito advanced
6073
+ # security evaluates the risk of an authentication event based on the
6074
+ # context that your app generates and passes to Amazon Cognito when it
6075
+ # makes API requests.
5891
6076
  # @return [Types::UserContextDataType]
5892
6077
  #
5893
6078
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/InitiateAuthRequest AWS API Documentation
@@ -5910,9 +6095,12 @@ module Aws::CognitoIdentityProvider
5910
6095
  # This name is returned in the `AdminInitiateAuth` response if you
5911
6096
  # must pass another challenge.
5912
6097
  #
5913
- # Valid values include the following. Note that all of these
5914
- # challenges require `USERNAME` and `SECRET_HASH` (if applicable) in
5915
- # the parameters.
6098
+ # Valid values include the following:
6099
+ #
6100
+ # <note markdown="1"> All of the following challenges require `USERNAME` and `SECRET_HASH`
6101
+ # (if applicable) in the parameters.
6102
+ #
6103
+ # </note>
5916
6104
  #
5917
6105
  # * `SMS_MFA`\: Next challenge is to supply an `SMS_MFA_CODE`,
5918
6106
  # delivered via SMS.
@@ -5933,9 +6121,23 @@ module Aws::CognitoIdentityProvider
5933
6121
  # for devices only.
5934
6122
  #
5935
6123
  # * `NEW_PASSWORD_REQUIRED`\: For users who are required to change
5936
- # their passwords after successful first login. This challenge
5937
- # should be passed with `NEW_PASSWORD` and any other required
5938
- # attributes.
6124
+ # their passwords after successful first login.
6125
+ #
6126
+ # Respond to this challenge with `NEW_PASSWORD` and any required
6127
+ # attributes that Amazon Cognito returned in the
6128
+ # `requiredAttributes` parameter. You can also set values for
6129
+ # attributes that aren't required by your user pool and that your
6130
+ # app client can write. For more information, see
6131
+ # [RespondToAuthChallenge][1].
6132
+ #
6133
+ # <note markdown="1"> In a `NEW_PASSWORD_REQUIRED` challenge response, you can't modify
6134
+ # a required attribute that already has a value. In
6135
+ # `RespondToAuthChallenge`, set a value for any keys that Amazon
6136
+ # Cognito returned in the `requiredAttributes` parameter, then use
6137
+ # the `UpdateUserAttributes` API operation to modify the value of
6138
+ # any additional attributes.
6139
+ #
6140
+ # </note>
5939
6141
  #
5940
6142
  # * `MFA_SETUP`\: For users who are required to setup an MFA factor
5941
6143
  # before they can sign in. The MFA types activated for the user pool
@@ -5948,6 +6150,10 @@ module Aws::CognitoIdentityProvider
5948
6150
  # complete sign-in. To set up SMS MFA, an administrator should help
5949
6151
  # the user to add a phone number to their account, and then the user
5950
6152
  # should call `InitiateAuth` again to restart sign-in.
6153
+ #
6154
+ #
6155
+ #
6156
+ # [1]: https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_RespondToAuthChallenge.html
5951
6157
  # @return [String]
5952
6158
  #
5953
6159
  # @!attribute [rw] session
@@ -6023,7 +6229,7 @@ module Aws::CognitoIdentityProvider
6023
6229
  # Lambda response.
6024
6230
  #
6025
6231
  # @!attribute [rw] message
6026
- # The message returned when Amazon Cognito hrows an invalid Lambda
6232
+ # The message returned when Amazon Cognito throws an invalid Lambda
6027
6233
  # response exception.
6028
6234
  # @return [String]
6029
6235
  #
@@ -6260,7 +6466,8 @@ module Aws::CognitoIdentityProvider
6260
6466
  # }
6261
6467
  #
6262
6468
  # @!attribute [rw] access_token
6263
- # The access tokens for the request to list devices.
6469
+ # A valid access token that Amazon Cognito issued to the user whose
6470
+ # list of devices you want to view.
6264
6471
  # @return [String]
6265
6472
  #
6266
6473
  # @!attribute [rw] limit
@@ -6366,7 +6573,7 @@ module Aws::CognitoIdentityProvider
6366
6573
  # @return [String]
6367
6574
  #
6368
6575
  # @!attribute [rw] max_results
6369
- # The maximum number of identity providers to return.
6576
+ # The maximum number of IdPs to return.
6370
6577
  # @return [Integer]
6371
6578
  #
6372
6579
  # @!attribute [rw] next_token
@@ -6384,7 +6591,7 @@ module Aws::CognitoIdentityProvider
6384
6591
  end
6385
6592
 
6386
6593
  # @!attribute [rw] providers
6387
- # A list of identity provider objects.
6594
+ # A list of IdP objects.
6388
6595
  # @return [Array<Types::ProviderDescription>]
6389
6596
  #
6390
6597
  # @!attribute [rw] next_token
@@ -6690,9 +6897,8 @@ module Aws::CognitoIdentityProvider
6690
6897
  # @return [Array<Types::UserType>]
6691
6898
  #
6692
6899
  # @!attribute [rw] next_token
6693
- # An identifier that was returned from the previous call to this
6694
- # operation, which can be used to return the next set of items in the
6695
- # list.
6900
+ # An identifier that you can use in a later request to return the next
6901
+ # set of items in the list.
6696
6902
  # @return [String]
6697
6903
  #
6698
6904
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/ListUsersInGroupResponse AWS API Documentation
@@ -6783,8 +6989,8 @@ module Aws::CognitoIdentityProvider
6783
6989
  # Custom attributes aren't searchable.
6784
6990
  #
6785
6991
  # <note markdown="1"> You can also list users with a client-side filter. The server-side
6786
- # filter matches no more than 1 attribute. For an advanced search, use
6787
- # a client-side filter with the `--query` parameter of the
6992
+ # filter matches no more than one attribute. For an advanced search,
6993
+ # use a client-side filter with the `--query` parameter of the
6788
6994
  # `list-users` action in the CLI. When you use a client-side filter,
6789
6995
  # ListUsers returns a paginated list of zero or more users. You can
6790
6996
  # receive multiple pages in a row with zero results. Repeat the query
@@ -6857,10 +7063,9 @@ module Aws::CognitoIdentityProvider
6857
7063
  include Aws::Structure
6858
7064
  end
6859
7065
 
6860
- # *This data type is no longer supported.* You can use it only for SMS
6861
- # multi-factor authentication (MFA) configurations. You can't use it
6862
- # for time-based one-time password (TOTP) software token MFA
6863
- # configurations.
7066
+ # *This data type is no longer supported.* Applies only to SMS
7067
+ # multi-factor authentication (MFA) configurations. Does not apply to
7068
+ # time-based one-time password (TOTP) software token MFA configurations.
6864
7069
  #
6865
7070
  # @note When making an API call, you may pass MFAOptionType
6866
7071
  # data as a hash:
@@ -7143,8 +7348,8 @@ module Aws::CognitoIdentityProvider
7143
7348
  # administrator must reset their password.
7144
7349
  #
7145
7350
  # <note markdown="1"> When you set `TemporaryPasswordValidityDays` for a user pool, you
7146
- # can no longer set the deprecated `UnusedAccountValidityDays` value
7147
- # for that user pool.
7351
+ # can no longer set a value for the legacy `UnusedAccountValidityDays`
7352
+ # parameter in that user pool.
7148
7353
  #
7149
7354
  # </note>
7150
7355
  # @return [Integer]
@@ -7190,14 +7395,14 @@ module Aws::CognitoIdentityProvider
7190
7395
  include Aws::Structure
7191
7396
  end
7192
7397
 
7193
- # A container for identity provider details.
7398
+ # A container for IdP details.
7194
7399
  #
7195
7400
  # @!attribute [rw] provider_name
7196
- # The identity provider name.
7401
+ # The IdP name.
7197
7402
  # @return [String]
7198
7403
  #
7199
7404
  # @!attribute [rw] provider_type
7200
- # The identity provider type.
7405
+ # The IdP type.
7201
7406
  # @return [String]
7202
7407
  #
7203
7408
  # @!attribute [rw] last_modified_date
@@ -7219,8 +7424,7 @@ module Aws::CognitoIdentityProvider
7219
7424
  include Aws::Structure
7220
7425
  end
7221
7426
 
7222
- # A container for information about an identity provider for a user
7223
- # pool.
7427
+ # A container for information about an IdP for a user pool.
7224
7428
  #
7225
7429
  # @note When making an API call, you may pass ProviderUserIdentifierType
7226
7430
  # data as a hash:
@@ -7293,6 +7497,7 @@ module Aws::CognitoIdentityProvider
7293
7497
  # client_id: "ClientIdType", # required
7294
7498
  # secret_hash: "SecretHashType",
7295
7499
  # user_context_data: {
7500
+ # ip_address: "StringType",
7296
7501
  # encoded_data: "StringType",
7297
7502
  # },
7298
7503
  # username: "UsernameType", # required
@@ -7315,9 +7520,11 @@ module Aws::CognitoIdentityProvider
7315
7520
  # @return [String]
7316
7521
  #
7317
7522
  # @!attribute [rw] user_context_data
7318
- # Contextual data such as the user's device fingerprint, IP address,
7319
- # or location used for evaluating the risk of an unexpected event by
7320
- # Amazon Cognito advanced security.
7523
+ # Contextual data about your user session, such as the device
7524
+ # fingerprint, IP address, or location. Amazon Cognito advanced
7525
+ # security evaluates the risk of an authentication event based on the
7526
+ # context that your app generates and passes to Amazon Cognito when it
7527
+ # makes API requests.
7321
7528
  # @return [Types::UserContextDataType]
7322
7529
  #
7323
7530
  # @!attribute [rw] username
@@ -7326,8 +7533,8 @@ module Aws::CognitoIdentityProvider
7326
7533
  # @return [String]
7327
7534
  #
7328
7535
  # @!attribute [rw] analytics_metadata
7329
- # The Amazon Pinpoint analytics metadata for collecting metrics for
7330
- # `ResendConfirmationCode` calls.
7536
+ # The Amazon Pinpoint analytics metadata that contributes to your
7537
+ # metrics for `ResendConfirmationCode` calls.
7331
7538
  # @return [Types::AnalyticsMetadataType]
7332
7539
  #
7333
7540
  # @!attribute [rw] client_metadata
@@ -7345,7 +7552,7 @@ module Aws::CognitoIdentityProvider
7345
7552
  # can process the `clientMetadata` value to enhance your workflow for
7346
7553
  # your specific needs.
7347
7554
  #
7348
- # For more information, see [Customizing User Pool Workflows with
7555
+ # For more information, see [ Customizing user pool Workflows with
7349
7556
  # Lambda Triggers][1] in the *Amazon Cognito Developer Guide*.
7350
7557
  #
7351
7558
  # <note markdown="1"> When you use the ClientMetadata parameter, remember that Amazon
@@ -7485,6 +7692,7 @@ module Aws::CognitoIdentityProvider
7485
7692
  # analytics_endpoint_id: "StringType",
7486
7693
  # },
7487
7694
  # user_context_data: {
7695
+ # ip_address: "StringType",
7488
7696
  # encoded_data: "StringType",
7489
7697
  # },
7490
7698
  # client_metadata: {
@@ -7530,13 +7738,27 @@ module Aws::CognitoIdentityProvider
7530
7738
  # * `PASSWORD_VERIFIER`\: `PASSWORD_CLAIM_SIGNATURE`,
7531
7739
  # `PASSWORD_CLAIM_SECRET_BLOCK`, `TIMESTAMP`, `USERNAME`.
7532
7740
  #
7533
- # <note markdown="1"> `PASSWORD_VERIFIER` requires `DEVICE_KEY` when signing in with a
7741
+ # <note markdown="1"> `PASSWORD_VERIFIER` requires `DEVICE_KEY` when you sign in with a
7534
7742
  # remembered device.
7535
7743
  #
7536
7744
  # </note>
7537
7745
  #
7538
- # * `NEW_PASSWORD_REQUIRED`\: `NEW_PASSWORD`, any other required
7539
- # attributes, `USERNAME`.
7746
+ # * `NEW_PASSWORD_REQUIRED`\: `NEW_PASSWORD`, `USERNAME`,
7747
+ # `SECRET_HASH` (if app client is configured with client secret). To
7748
+ # set any required attributes that Amazon Cognito returned as
7749
+ # `requiredAttributes` in the `InitiateAuth` response, add a
7750
+ # `userAttributes.attributename ` parameter. This parameter can also
7751
+ # set values for writable attributes that aren't required by your
7752
+ # user pool.
7753
+ #
7754
+ # <note markdown="1"> In a `NEW_PASSWORD_REQUIRED` challenge response, you can't modify
7755
+ # a required attribute that already has a value. In
7756
+ # `RespondToAuthChallenge`, set a value for any keys that Amazon
7757
+ # Cognito returned in the `requiredAttributes` parameter, then use
7758
+ # the `UpdateUserAttributes` API operation to modify the value of
7759
+ # any additional attributes.
7760
+ #
7761
+ # </note>
7540
7762
  #
7541
7763
  # * `SOFTWARE_TOKEN_MFA`\: `USERNAME` and `SOFTWARE_TOKEN_MFA_CODE`
7542
7764
  # are required attributes.
@@ -7553,14 +7775,16 @@ module Aws::CognitoIdentityProvider
7553
7775
  # @return [Hash<String,String>]
7554
7776
  #
7555
7777
  # @!attribute [rw] analytics_metadata
7556
- # The Amazon Pinpoint analytics metadata for collecting metrics for
7557
- # `RespondToAuthChallenge` calls.
7778
+ # The Amazon Pinpoint analytics metadata that contributes to your
7779
+ # metrics for `RespondToAuthChallenge` calls.
7558
7780
  # @return [Types::AnalyticsMetadataType]
7559
7781
  #
7560
7782
  # @!attribute [rw] user_context_data
7561
- # Contextual data such as the user's device fingerprint, IP address,
7562
- # or location used for evaluating the risk of an unexpected event by
7563
- # Amazon Cognito advanced security.
7783
+ # Contextual data about your user session, such as the device
7784
+ # fingerprint, IP address, or location. Amazon Cognito advanced
7785
+ # security evaluates the risk of an authentication event based on the
7786
+ # context that your app generates and passes to Amazon Cognito when it
7787
+ # makes API requests.
7564
7788
  # @return [Types::UserContextDataType]
7565
7789
  #
7566
7790
  # @!attribute [rw] client_metadata
@@ -7580,7 +7804,7 @@ module Aws::CognitoIdentityProvider
7580
7804
  # can process the `clientMetadata` value to enhance your workflow for
7581
7805
  # your specific needs.
7582
7806
  #
7583
- # For more information, see [Customizing User Pool Workflows with
7807
+ # For more information, see [ Customizing user pool Workflows with
7584
7808
  # Lambda Triggers][1] in the *Amazon Cognito Developer Guide*.
7585
7809
  #
7586
7810
  # <note markdown="1"> When you use the ClientMetadata parameter, remember that Amazon
@@ -7856,13 +8080,13 @@ module Aws::CognitoIdentityProvider
7856
8080
  # @!attribute [rw] mutable
7857
8081
  # Specifies whether the value of the attribute can be changed.
7858
8082
  #
7859
- # For any user pool attribute that is mapped to an identity provider
7860
- # attribute, you must set this parameter to `true`. Amazon Cognito
7861
- # updates mapped attributes when users sign in to your application
7862
- # through an identity provider. If an attribute is immutable, Amazon
7863
- # Cognito throws an error when it attempts to update the attribute.
7864
- # For more information, see [Specifying Identity Provider Attribute
7865
- # Mappings for Your User Pool][1].
8083
+ # For any user pool attribute that is mapped to an IdP attribute, you
8084
+ # must set this parameter to `true`. Amazon Cognito updates mapped
8085
+ # attributes when users sign in to your application through an IdP. If
8086
+ # an attribute is immutable, Amazon Cognito throws an error when it
8087
+ # attempts to update the attribute. For more information, see
8088
+ # [Specifying Identity Provider Attribute Mappings for Your User
8089
+ # Pool][1].
7866
8090
  #
7867
8091
  #
7868
8092
  #
@@ -8088,7 +8312,8 @@ module Aws::CognitoIdentityProvider
8088
8312
  # @return [Types::SoftwareTokenMfaSettingsType]
8089
8313
  #
8090
8314
  # @!attribute [rw] access_token
8091
- # The access token for the user.
8315
+ # A valid access token that Amazon Cognito issued to the user whose
8316
+ # MFA preference you want to set.
8092
8317
  # @return [String]
8093
8318
  #
8094
8319
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/SetUserMFAPreferenceRequest AWS API Documentation
@@ -8115,6 +8340,7 @@ module Aws::CognitoIdentityProvider
8115
8340
  # sms_configuration: {
8116
8341
  # sns_caller_arn: "ArnType", # required
8117
8342
  # external_id: "StringType",
8343
+ # sns_region: "RegionCodeType",
8118
8344
  # },
8119
8345
  # },
8120
8346
  # software_token_mfa_configuration: {
@@ -8137,9 +8363,9 @@ module Aws::CognitoIdentityProvider
8137
8363
  #
8138
8364
  # @!attribute [rw] mfa_configuration
8139
8365
  # The MFA configuration. If you set the MfaConfiguration value to
8140
- # ‘ON’, only users with an MFA factor set up can sign in. To learn
8141
- # more, see [Adding Multi-Factor Authentication (MFA) to a User
8142
- # Pool](cognito/latest/developerguide/user-pool-settings-mfa.html).
8366
+ # ‘ON’, only users who have set up an MFA factor can sign in. To learn
8367
+ # more, see [Adding Multi-Factor Authentication (MFA) to a user
8368
+ # pool](cognito/latest/developerguide/user-pool-settings-mfa.html).
8143
8369
  # Valid values include:
8144
8370
  #
8145
8371
  # * `OFF` MFA won't be used for any users.
@@ -8206,7 +8432,8 @@ module Aws::CognitoIdentityProvider
8206
8432
  # }
8207
8433
  #
8208
8434
  # @!attribute [rw] access_token
8209
- # The access token for the set user settings request.
8435
+ # A valid access token that Amazon Cognito issued to the user whose
8436
+ # user settings you want to configure.
8210
8437
  # @return [String]
8211
8438
  #
8212
8439
  # @!attribute [rw] mfa_options
@@ -8255,6 +8482,7 @@ module Aws::CognitoIdentityProvider
8255
8482
  # analytics_endpoint_id: "StringType",
8256
8483
  # },
8257
8484
  # user_context_data: {
8485
+ # ip_address: "StringType",
8258
8486
  # encoded_data: "StringType",
8259
8487
  # },
8260
8488
  # client_metadata: {
@@ -8292,14 +8520,16 @@ module Aws::CognitoIdentityProvider
8292
8520
  # @return [Array<Types::AttributeType>]
8293
8521
  #
8294
8522
  # @!attribute [rw] analytics_metadata
8295
- # The Amazon Pinpoint analytics metadata for collecting metrics for
8296
- # `SignUp` calls.
8523
+ # The Amazon Pinpoint analytics metadata that contributes to your
8524
+ # metrics for `SignUp` calls.
8297
8525
  # @return [Types::AnalyticsMetadataType]
8298
8526
  #
8299
8527
  # @!attribute [rw] user_context_data
8300
- # Contextual data such as the user's device fingerprint, IP address,
8301
- # or location used for evaluating the risk of an unexpected event by
8302
- # Amazon Cognito advanced security.
8528
+ # Contextual data about your user session, such as the device
8529
+ # fingerprint, IP address, or location. Amazon Cognito advanced
8530
+ # security evaluates the risk of an authentication event based on the
8531
+ # context that your app generates and passes to Amazon Cognito when it
8532
+ # makes API requests.
8303
8533
  # @return [Types::UserContextDataType]
8304
8534
  #
8305
8535
  # @!attribute [rw] client_metadata
@@ -8317,7 +8547,7 @@ module Aws::CognitoIdentityProvider
8317
8547
  # your function code in Lambda, you can process the `clientMetadata`
8318
8548
  # value to enhance your workflow for your specific needs.
8319
8549
  #
8320
- # For more information, see [Customizing User Pool Workflows with
8550
+ # For more information, see [ Customizing user pool Workflows with
8321
8551
  # Lambda Triggers][1] in the *Amazon Cognito Developer Guide*.
8322
8552
  #
8323
8553
  # <note markdown="1"> When you use the ClientMetadata parameter, remember that Amazon
@@ -8383,12 +8613,12 @@ module Aws::CognitoIdentityProvider
8383
8613
  include Aws::Structure
8384
8614
  end
8385
8615
 
8386
- # The SMS configuration type that includes the settings the Amazon
8387
- # Cognito User Pool must call for the Amazon Simple Notification Service
8388
- # service to send an SMS message from your Amazon Web Services account.
8389
- # The Amazon Cognito User Pool makes the request to the Amazon SNS
8390
- # Service by using an Identity and Access Management role that you
8391
- # provide for your Amazon Web Services account.
8616
+ # The SMS configuration type is the settings that your Amazon Cognito
8617
+ # user pool must use to send an SMS message from your Amazon Web
8618
+ # Services account through Amazon Simple Notification Service. To send
8619
+ # SMS messages with Amazon SNS in the Amazon Web Services Region that
8620
+ # you want, the Amazon Cognito user pool uses an Identity and Access
8621
+ # Management (IAM) role in your Amazon Web Services account.
8392
8622
  #
8393
8623
  # @note When making an API call, you may pass SmsConfigurationType
8394
8624
  # data as a hash:
@@ -8396,6 +8626,7 @@ module Aws::CognitoIdentityProvider
8396
8626
  # {
8397
8627
  # sns_caller_arn: "ArnType", # required
8398
8628
  # external_id: "StringType",
8629
+ # sns_region: "RegionCodeType",
8399
8630
  # }
8400
8631
  #
8401
8632
  # @!attribute [rw] sns_caller_arn
@@ -8410,14 +8641,15 @@ module Aws::CognitoIdentityProvider
8410
8641
  # @return [String]
8411
8642
  #
8412
8643
  # @!attribute [rw] external_id
8413
- # The external ID is a value that you should use to add security to
8414
- # your IAM role that is used to call Amazon SNS to send SMS messages
8415
- # for your user pool. If you provide an `ExternalId`, the Amazon
8416
- # Cognito User Pool will include it when attempting to assume your IAM
8417
- # role so that you can set your roles trust policy to require the
8418
- # `ExternalID`. If you use the Amazon Cognito Management Console to
8419
- # create a role for SMS multi-factor authentication (MFA), Amazon
8420
- # Cognito will create a role with the required permissions and a trust
8644
+ # The external ID provides additional security for your IAM role. You
8645
+ # can use an `ExternalId` with the IAM role that you use with Amazon
8646
+ # SNS to send SMS messages for your user pool. If you provide an
8647
+ # `ExternalId`, your Amazon Cognito user pool includes it in the
8648
+ # request to assume your IAM role. You can configure the role trust
8649
+ # policy to require that Amazon Cognito, and any principal, provide
8650
+ # the `ExternalID`. If you use the Amazon Cognito Management Console
8651
+ # to create a role for SMS multi-factor authentication (MFA), Amazon
8652
+ # Cognito creates a role with the required permissions and a trust
8421
8653
  # policy that demonstrates use of the `ExternalId`.
8422
8654
  #
8423
8655
  # For more information about the `ExternalId` of a role, see [How to
@@ -8429,11 +8661,27 @@ module Aws::CognitoIdentityProvider
8429
8661
  # [1]: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user_externalid.html
8430
8662
  # @return [String]
8431
8663
  #
8664
+ # @!attribute [rw] sns_region
8665
+ # The Amazon Web Services Region to use with Amazon SNS integration.
8666
+ # You can choose the same Region as your user pool, or a supported
8667
+ # **Legacy Amazon SNS alternate Region**.
8668
+ #
8669
+ # Amazon Cognito resources in the Asia Pacific (Seoul) Amazon Web
8670
+ # Services Region must use your Amazon SNS configuration in the Asia
8671
+ # Pacific (Tokyo) Region. For more information, see [SMS message
8672
+ # settings for Amazon Cognito user pools][1].
8673
+ #
8674
+ #
8675
+ #
8676
+ # [1]: https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-sms-settings.html
8677
+ # @return [String]
8678
+ #
8432
8679
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/SmsConfigurationType AWS API Documentation
8433
8680
  #
8434
8681
  class SmsConfigurationType < Struct.new(
8435
8682
  :sns_caller_arn,
8436
- :external_id)
8683
+ :external_id,
8684
+ :sns_region)
8437
8685
  SENSITIVE = []
8438
8686
  include Aws::Structure
8439
8687
  end
@@ -8449,6 +8697,7 @@ module Aws::CognitoIdentityProvider
8449
8697
  # sms_configuration: {
8450
8698
  # sns_caller_arn: "ArnType", # required
8451
8699
  # external_id: "StringType",
8700
+ # sns_region: "RegionCodeType",
8452
8701
  # },
8453
8702
  # }
8454
8703
  #
@@ -8460,7 +8709,12 @@ module Aws::CognitoIdentityProvider
8460
8709
  # @return [String]
8461
8710
  #
8462
8711
  # @!attribute [rw] sms_configuration
8463
- # The SMS configuration.
8712
+ # The SMS configuration with the settings that your Amazon Cognito
8713
+ # user pool must use to send an SMS message from your Amazon Web
8714
+ # Services account through Amazon Simple Notification Service. To
8715
+ # request Amazon SNS in the Amazon Web Services Region that you want,
8716
+ # the Amazon Cognito user pool uses an Identity and Access Management
8717
+ # (IAM) role that you provide for your Amazon Web Services account.
8464
8718
  # @return [Types::SmsConfigurationType]
8465
8719
  #
8466
8720
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/SmsMfaConfigType AWS API Documentation
@@ -8688,8 +8942,8 @@ module Aws::CognitoIdentityProvider
8688
8942
  #
8689
8943
  class TagResourceResponse < Aws::EmptyStructure; end
8690
8944
 
8691
- # The data type for TokenValidityUnits that specifics the time
8692
- # measurements for token validity.
8945
+ # The data type TokenValidityUnits specifies the time units you use when
8946
+ # you set the duration of ID, access, and refresh tokens.
8693
8947
  #
8694
8948
  # @note When making an API call, you may pass TokenValidityUnitsType
8695
8949
  # data as a hash:
@@ -8701,18 +8955,21 @@ module Aws::CognitoIdentityProvider
8701
8955
  # }
8702
8956
  #
8703
8957
  # @!attribute [rw] access_token
8704
- # A time unit in seconds”, minutes”, hours”, or days for the
8705
- # value in AccessTokenValidity, defaulting to hours.
8958
+ # A time unit of `seconds`, `minutes`, `hours`, or `days` for the
8959
+ # value that you set in the `AccessTokenValidity` parameter. The
8960
+ # default `AccessTokenValidity` time unit is hours.
8706
8961
  # @return [String]
8707
8962
  #
8708
8963
  # @!attribute [rw] id_token
8709
- # A time unit in seconds”, minutes”, hours”, or days for the
8710
- # value in IdTokenValidity, defaulting to hours.
8964
+ # A time unit of `seconds`, `minutes`, `hours`, or `days` for the
8965
+ # value that you set in the `IdTokenValidity` parameter. The default
8966
+ # `IdTokenValidity` time unit is hours.
8711
8967
  # @return [String]
8712
8968
  #
8713
8969
  # @!attribute [rw] refresh_token
8714
- # A time unit in seconds”, minutes”, hours”, or days for the
8715
- # value in RefreshTokenValidity, defaulting to days.
8970
+ # A time unit of `seconds`, `minutes`, `hours`, or `days` for the
8971
+ # value that you set in the `RefreshTokenValidity` parameter. The
8972
+ # default `RefreshTokenValidity` time unit is days.
8716
8973
  # @return [String]
8717
8974
  #
8718
8975
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/TokenValidityUnitsType AWS API Documentation
@@ -8977,7 +9234,8 @@ module Aws::CognitoIdentityProvider
8977
9234
  # }
8978
9235
  #
8979
9236
  # @!attribute [rw] access_token
8980
- # The access token.
9237
+ # A valid access token that Amazon Cognito issued to the user whose
9238
+ # device status you want to update.
8981
9239
  # @return [String]
8982
9240
  #
8983
9241
  # @!attribute [rw] device_key
@@ -9086,20 +9344,20 @@ module Aws::CognitoIdentityProvider
9086
9344
  # @return [String]
9087
9345
  #
9088
9346
  # @!attribute [rw] provider_name
9089
- # The identity provider name.
9347
+ # The IdP name.
9090
9348
  # @return [String]
9091
9349
  #
9092
9350
  # @!attribute [rw] provider_details
9093
- # The identity provider details to be updated, such as `MetadataURL`
9094
- # and `MetadataFile`.
9351
+ # The IdP details to be updated, such as `MetadataURL` and
9352
+ # `MetadataFile`.
9095
9353
  # @return [Hash<String,String>]
9096
9354
  #
9097
9355
  # @!attribute [rw] attribute_mapping
9098
- # The identity provider attribute mapping to be changed.
9356
+ # The IdP attribute mapping to be changed.
9099
9357
  # @return [Hash<String,String>]
9100
9358
  #
9101
9359
  # @!attribute [rw] idp_identifiers
9102
- # A list of identity provider identifiers.
9360
+ # A list of IdP identifiers.
9103
9361
  # @return [Array<String>]
9104
9362
  #
9105
9363
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/UpdateIdentityProviderRequest AWS API Documentation
@@ -9115,7 +9373,7 @@ module Aws::CognitoIdentityProvider
9115
9373
  end
9116
9374
 
9117
9375
  # @!attribute [rw] identity_provider
9118
- # The identity provider object.
9376
+ # The IdP object.
9119
9377
  # @return [Types::IdentityProviderType]
9120
9378
  #
9121
9379
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/UpdateIdentityProviderResponse AWS API Documentation
@@ -9203,10 +9461,19 @@ module Aws::CognitoIdentityProvider
9203
9461
  #
9204
9462
  # For custom attributes, you must prepend the `custom:` prefix to the
9205
9463
  # attribute name.
9464
+ #
9465
+ # If you have set an attribute to require verification before Amazon
9466
+ # Cognito updates its value, this request doesn’t immediately update
9467
+ # the value of that attribute. After your user receives and responds
9468
+ # to a verification message to verify the new value, Amazon Cognito
9469
+ # updates the attribute value. Your user can sign in and receive
9470
+ # messages with the original attribute value until they verify the new
9471
+ # value.
9206
9472
  # @return [Array<Types::AttributeType>]
9207
9473
  #
9208
9474
  # @!attribute [rw] access_token
9209
- # The access token for the request to update user attributes.
9475
+ # A valid access token that Amazon Cognito issued to the user whose
9476
+ # user attributes you want to update.
9210
9477
  # @return [String]
9211
9478
  #
9212
9479
  # @!attribute [rw] client_metadata
@@ -9224,7 +9491,7 @@ module Aws::CognitoIdentityProvider
9224
9491
  # can process the `clientMetadata` value to enhance your workflow for
9225
9492
  # your specific needs.
9226
9493
  #
9227
- # For more information, see [Customizing User Pool Workflows with
9494
+ # For more information, see [ Customizing user pool Workflows with
9228
9495
  # Lambda Triggers][1] in the *Amazon Cognito Developer Guide*.
9229
9496
  #
9230
9497
  # <note markdown="1"> When you use the ClientMetadata parameter, remember that Amazon
@@ -9309,6 +9576,7 @@ module Aws::CognitoIdentityProvider
9309
9576
  # },
9310
9577
  # prevent_user_existence_errors: "LEGACY", # accepts LEGACY, ENABLED
9311
9578
  # enable_token_revocation: false,
9579
+ # enable_propagate_additional_user_context_data: false,
9312
9580
  # }
9313
9581
  #
9314
9582
  # @!attribute [rw] user_pool_id
@@ -9325,23 +9593,53 @@ module Aws::CognitoIdentityProvider
9325
9593
  # @return [String]
9326
9594
  #
9327
9595
  # @!attribute [rw] refresh_token_validity
9328
- # The time limit, in days, after which the refresh token is no longer
9329
- # valid and can't be used.
9596
+ # The refresh token time limit. After this limit expires, your user
9597
+ # can't use their refresh token. To specify the time unit for
9598
+ # `RefreshTokenValidity` as `seconds`, `minutes`, `hours`, or `days`,
9599
+ # set a `TokenValidityUnits` value in your API request.
9600
+ #
9601
+ # For example, when you set `RefreshTokenValidity` as `10` and
9602
+ # `TokenValidityUnits` as `days`, your user can refresh their session
9603
+ # and retrieve new access and ID tokens for 10 days.
9604
+ #
9605
+ # The default time unit for `RefreshTokenValidity` in an API request
9606
+ # is days. You can't set `RefreshTokenValidity` to 0. If you do,
9607
+ # Amazon Cognito overrides the value with the default value of 30
9608
+ # days. *Valid range* is displayed below in seconds.
9330
9609
  # @return [Integer]
9331
9610
  #
9332
9611
  # @!attribute [rw] access_token_validity
9333
- # The time limit after which the access token is no longer valid and
9334
- # can't be used.
9612
+ # The access token time limit. After this limit expires, your user
9613
+ # can't use their access token. To specify the time unit for
9614
+ # `AccessTokenValidity` as `seconds`, `minutes`, `hours`, or `days`,
9615
+ # set a `TokenValidityUnits` value in your API request.
9616
+ #
9617
+ # For example, when you set `AccessTokenValidity` to `10` and
9618
+ # `TokenValidityUnits` to `hours`, your user can authorize access with
9619
+ # their access token for 10 hours.
9620
+ #
9621
+ # The default time unit for `AccessTokenValidity` in an API request is
9622
+ # hours. *Valid range* is displayed below in seconds.
9335
9623
  # @return [Integer]
9336
9624
  #
9337
9625
  # @!attribute [rw] id_token_validity
9338
- # The time limit after which the ID token is no longer valid and
9339
- # can't be used.
9626
+ # The ID token time limit. After this limit expires, your user can't
9627
+ # use their ID token. To specify the time unit for `IdTokenValidity`
9628
+ # as `seconds`, `minutes`, `hours`, or `days`, set a
9629
+ # `TokenValidityUnits` value in your API request.
9630
+ #
9631
+ # For example, when you set `IdTokenValidity` as `10` and
9632
+ # `TokenValidityUnits` as `hours`, your user can authenticate their
9633
+ # session with their ID token for 10 hours.
9634
+ #
9635
+ # The default time unit for `AccessTokenValidity` in an API request is
9636
+ # hours. *Valid range* is displayed below in seconds.
9340
9637
  # @return [Integer]
9341
9638
  #
9342
9639
  # @!attribute [rw] token_validity_units
9343
- # The units in which the validity times are represented. Default for
9344
- # RefreshToken is days, and default for ID and access tokens is hours.
9640
+ # The units in which the validity times are represented. The default
9641
+ # unit for RefreshToken is days, and the default for ID and access
9642
+ # tokens is hours.
9345
9643
  # @return [Types::TokenValidityUnitsType]
9346
9644
  #
9347
9645
  # @!attribute [rw] read_attributes
@@ -9381,13 +9679,14 @@ module Aws::CognitoIdentityProvider
9381
9679
  # @return [Array<String>]
9382
9680
  #
9383
9681
  # @!attribute [rw] supported_identity_providers
9384
- # A list of provider names for the identity providers that are
9385
- # supported on this client.
9682
+ # A list of provider names for the IdPs that this client supports. The
9683
+ # following are supported: `COGNITO`, `Facebook`, `Google`
9684
+ # `LoginWithAmazon`, and the names of your own SAML and OIDC
9685
+ # providers.
9386
9686
  # @return [Array<String>]
9387
9687
  #
9388
9688
  # @!attribute [rw] callback_urls
9389
- # A list of allowed redirect (callback) URLs for the identity
9390
- # providers.
9689
+ # A list of allowed redirect (callback) URLs for the IdPs.
9391
9690
  #
9392
9691
  # A redirect URI must:
9393
9692
  #
@@ -9410,7 +9709,7 @@ module Aws::CognitoIdentityProvider
9410
9709
  # @return [Array<String>]
9411
9710
  #
9412
9711
  # @!attribute [rw] logout_urls
9413
- # A list of allowed logout URLs for the identity providers.
9712
+ # A list of allowed logout URLs for the IdPs.
9414
9713
  # @return [Array<String>]
9415
9714
  #
9416
9715
  # @!attribute [rw] default_redirect_uri
@@ -9439,22 +9738,28 @@ module Aws::CognitoIdentityProvider
9439
9738
  # @!attribute [rw] allowed_o_auth_flows
9440
9739
  # The allowed OAuth flows.
9441
9740
  #
9442
- # Set to `code` to initiate a code grant flow, which provides an
9443
- # authorization code as the response. This code can be exchanged for
9444
- # access tokens with the token endpoint.
9741
+ # code
9742
+ #
9743
+ # : Use a code grant flow, which provides an authorization code as the
9744
+ # response. This code can be exchanged for access tokens with the
9745
+ # `/oauth2/token` endpoint.
9746
+ #
9747
+ # implicit
9445
9748
  #
9446
- # Set to `implicit` to specify that the client should get the access
9447
- # token (and, optionally, ID token, based on scopes) directly.
9749
+ # : Issue the access token (and, optionally, ID token, based on
9750
+ # scopes) directly to your user.
9448
9751
  #
9449
- # Set to `client_credentials` to specify that the client should get
9450
- # the access token (and, optionally, ID token, based on scopes) from
9451
- # the token endpoint using a combination of client and client\_secret.
9752
+ # client\_credentials
9753
+ #
9754
+ # : Issue the access token from the `/oauth2/token` endpoint directly
9755
+ # to a non-person user using a combination of the client ID and
9756
+ # client secret.
9452
9757
  # @return [Array<String>]
9453
9758
  #
9454
9759
  # @!attribute [rw] allowed_o_auth_scopes
9455
- # The allowed OAuth scopes. Possible values provided by OAuth are:
9760
+ # The allowed OAuth scopes. Possible values provided by OAuth are
9456
9761
  # `phone`, `email`, `openid`, and `profile`. Possible values provided
9457
- # by Amazon Web Services are: `aws.cognito.signin.user.admin`. Custom
9762
+ # by Amazon Web Services are `aws.cognito.signin.user.admin`. Custom
9458
9763
  # scopes created in Resource Servers are also supported.
9459
9764
  # @return [Array<String>]
9460
9765
  #
@@ -9464,14 +9769,14 @@ module Aws::CognitoIdentityProvider
9464
9769
  # @return [Boolean]
9465
9770
  #
9466
9771
  # @!attribute [rw] analytics_configuration
9467
- # The Amazon Pinpoint analytics configuration for collecting metrics
9468
- # for this user pool.
9772
+ # The Amazon Pinpoint analytics configuration necessary to collect
9773
+ # metrics for this user pool.
9469
9774
  #
9470
- # <note markdown="1"> In Amazon Web Services Regions where isn't available, User Pools
9471
- # only supports sending events to Amazon Pinpoint projects in
9472
- # us-east-1. In Regions where Pinpoint is available, User Pools will
9473
- # support sending events to Amazon Pinpoint projects within that same
9474
- # Region.
9775
+ # <note markdown="1"> In Amazon Web Services Regions where Amazon Pinpoint isn't
9776
+ # available, user pools only support sending events to Amazon Pinpoint
9777
+ # projects in us-east-1. In Regions where Amazon Pinpoint is
9778
+ # available, user pools support sending events to Amazon Pinpoint
9779
+ # projects within that same Region.
9475
9780
  #
9476
9781
  # </note>
9477
9782
  # @return [Types::AnalyticsConfigurationType]
@@ -9504,6 +9809,20 @@ module Aws::CognitoIdentityProvider
9504
9809
  # [1]: https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_RevokeToken.html
9505
9810
  # @return [Boolean]
9506
9811
  #
9812
+ # @!attribute [rw] enable_propagate_additional_user_context_data
9813
+ # Activates the propagation of additional user context data. For more
9814
+ # information about propagation of user context data, see [ Adding
9815
+ # advanced security to a user pool][1]. If you don’t include this
9816
+ # parameter, you can't send device fingerprint information, including
9817
+ # source IP address, to Amazon Cognito advanced security. You can only
9818
+ # activate `EnablePropagateAdditionalUserContextData` in an app client
9819
+ # that has a client secret.
9820
+ #
9821
+ #
9822
+ #
9823
+ # [1]: https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-advanced-security.html
9824
+ # @return [Boolean]
9825
+ #
9507
9826
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/UpdateUserPoolClientRequest AWS API Documentation
9508
9827
  #
9509
9828
  class UpdateUserPoolClientRequest < Struct.new(
@@ -9526,7 +9845,8 @@ module Aws::CognitoIdentityProvider
9526
9845
  :allowed_o_auth_flows_user_pool_client,
9527
9846
  :analytics_configuration,
9528
9847
  :prevent_user_existence_errors,
9529
- :enable_token_revocation)
9848
+ :enable_token_revocation,
9849
+ :enable_propagate_additional_user_context_data)
9530
9850
  SENSITIVE = [:client_id]
9531
9851
  include Aws::Structure
9532
9852
  end
@@ -9657,6 +9977,9 @@ module Aws::CognitoIdentityProvider
9657
9977
  # default_email_option: "CONFIRM_WITH_LINK", # accepts CONFIRM_WITH_LINK, CONFIRM_WITH_CODE
9658
9978
  # },
9659
9979
  # sms_authentication_message: "SmsVerificationMessageType",
9980
+ # user_attribute_update_settings: {
9981
+ # attributes_require_verification_before_update: ["phone_number"], # accepts phone_number, email
9982
+ # },
9660
9983
  # mfa_configuration: "OFF", # accepts OFF, ON, OPTIONAL
9661
9984
  # device_configuration: {
9662
9985
  # challenge_required_on_new_device: false,
@@ -9672,6 +9995,7 @@ module Aws::CognitoIdentityProvider
9672
9995
  # sms_configuration: {
9673
9996
  # sns_caller_arn: "ArnType", # required
9674
9997
  # external_id: "StringType",
9998
+ # sns_region: "RegionCodeType",
9675
9999
  # },
9676
10000
  # user_pool_tags: {
9677
10001
  # "TagKeysType" => "TagValueType",
@@ -9736,8 +10060,21 @@ module Aws::CognitoIdentityProvider
9736
10060
  # The contents of the SMS authentication message.
9737
10061
  # @return [String]
9738
10062
  #
10063
+ # @!attribute [rw] user_attribute_update_settings
10064
+ # The settings for updates to user attributes. These settings include
10065
+ # the property `AttributesRequireVerificationBeforeUpdate`, a
10066
+ # user-pool setting that tells Amazon Cognito how to handle changes to
10067
+ # the value of your users' email address and phone number attributes.
10068
+ # For more information, see [ Verifying updates to to email addresses
10069
+ # and phone numbers][1].
10070
+ #
10071
+ #
10072
+ #
10073
+ # [1]: https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-email-phone-verification.html#user-pool-settings-verifications-verify-attribute-updates
10074
+ # @return [Types::UserAttributeUpdateSettingsType]
10075
+ #
9739
10076
  # @!attribute [rw] mfa_configuration
9740
- # Can be one of the following values:
10077
+ # Possible values include:
9741
10078
  #
9742
10079
  # * `OFF` - MFA tokens aren't required and can't be specified during
9743
10080
  # user registration.
@@ -9760,11 +10097,19 @@ module Aws::CognitoIdentityProvider
9760
10097
  # @return [Types::DeviceConfigurationType]
9761
10098
  #
9762
10099
  # @!attribute [rw] email_configuration
9763
- # Email configuration.
10100
+ # The email configuration of your user pool. The email configuration
10101
+ # type sets your preferred sending method, Amazon Web Services Region,
10102
+ # and sender for email invitation and verification messages from your
10103
+ # user pool.
9764
10104
  # @return [Types::EmailConfigurationType]
9765
10105
  #
9766
10106
  # @!attribute [rw] sms_configuration
9767
- # SMS configuration.
10107
+ # The SMS configuration with the settings that your Amazon Cognito
10108
+ # user pool must use to send an SMS message from your Amazon Web
10109
+ # Services account through Amazon Simple Notification Service. To send
10110
+ # SMS messages with Amazon SNS in the Amazon Web Services Region that
10111
+ # you want, the Amazon Cognito user pool uses an Identity and Access
10112
+ # Management (IAM) role in your Amazon Web Services account.
9768
10113
  # @return [Types::SmsConfigurationType]
9769
10114
  #
9770
10115
  # @!attribute [rw] user_pool_tags
@@ -9805,6 +10150,7 @@ module Aws::CognitoIdentityProvider
9805
10150
  :email_verification_subject,
9806
10151
  :verification_message_template,
9807
10152
  :sms_authentication_message,
10153
+ :user_attribute_update_settings,
9808
10154
  :mfa_configuration,
9809
10155
  :device_configuration,
9810
10156
  :email_configuration,
@@ -9824,6 +10170,60 @@ module Aws::CognitoIdentityProvider
9824
10170
  #
9825
10171
  class UpdateUserPoolResponse < Aws::EmptyStructure; end
9826
10172
 
10173
+ # The settings for updates to user attributes. These settings include
10174
+ # the property `AttributesRequireVerificationBeforeUpdate`, a user-pool
10175
+ # setting that tells Amazon Cognito how to handle changes to the value
10176
+ # of your users' email address and phone number attributes. For more
10177
+ # information, see [ Verifying updates to to email addresses and phone
10178
+ # numbers][1].
10179
+ #
10180
+ #
10181
+ #
10182
+ # [1]: https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-email-phone-verification.html#user-pool-settings-verifications-verify-attribute-updates
10183
+ #
10184
+ # @note When making an API call, you may pass UserAttributeUpdateSettingsType
10185
+ # data as a hash:
10186
+ #
10187
+ # {
10188
+ # attributes_require_verification_before_update: ["phone_number"], # accepts phone_number, email
10189
+ # }
10190
+ #
10191
+ # @!attribute [rw] attributes_require_verification_before_update
10192
+ # Requires that your user verifies their email address, phone number,
10193
+ # or both before Amazon Cognito updates the value of that attribute.
10194
+ # When you update a user attribute that has this option activated,
10195
+ # Amazon Cognito sends a verification message to the new phone number
10196
+ # or email address. Amazon Cognito doesn’t change the value of the
10197
+ # attribute until your user responds to the verification message and
10198
+ # confirms the new value.
10199
+ #
10200
+ # You can verify an updated email address or phone number with a
10201
+ # [VerifyUserAttribute][1] API request. You can also call the
10202
+ # [UpdateUserAttributes][2] or [AdminUpdateUserAttributes][3] API and
10203
+ # set `email_verified` or `phone_number_verified` to true.
10204
+ #
10205
+ # When `AttributesRequireVerificationBeforeUpdate` is false, your user
10206
+ # pool doesn't require that your users verify attribute changes
10207
+ # before Amazon Cognito updates them. In a user pool where
10208
+ # `AttributesRequireVerificationBeforeUpdate` is false, API operations
10209
+ # that change attribute values can immediately update a user’s `email`
10210
+ # or `phone_number` attribute.
10211
+ #
10212
+ #
10213
+ #
10214
+ # [1]: https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_VerifyUserAttribute.html
10215
+ # [2]: https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UpdateUserAttributes.html
10216
+ # [3]: https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_AdminUpdateUserAttributes.html
10217
+ # @return [Array<String>]
10218
+ #
10219
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/UserAttributeUpdateSettingsType AWS API Documentation
10220
+ #
10221
+ class UserAttributeUpdateSettingsType < Struct.new(
10222
+ :attributes_require_verification_before_update)
10223
+ SENSITIVE = []
10224
+ include Aws::Structure
10225
+ end
10226
+
9827
10227
  # Contextual data, such as the user's device fingerprint, IP address,
9828
10228
  # or location, used for evaluating the risk of an unexpected event by
9829
10229
  # Amazon Cognito advanced security.
@@ -9832,18 +10232,29 @@ module Aws::CognitoIdentityProvider
9832
10232
  # data as a hash:
9833
10233
  #
9834
10234
  # {
10235
+ # ip_address: "StringType",
9835
10236
  # encoded_data: "StringType",
9836
10237
  # }
9837
10238
  #
10239
+ # @!attribute [rw] ip_address
10240
+ # The source IP address of your user's device.
10241
+ # @return [String]
10242
+ #
9838
10243
  # @!attribute [rw] encoded_data
9839
- # Contextual data, such as the user's device fingerprint, IP address,
9840
- # or location, used for evaluating the risk of an unexpected event by
9841
- # Amazon Cognito advanced security.
10244
+ # Encoded device-fingerprint details that your app collected with the
10245
+ # Amazon Cognito context data collection library. For more
10246
+ # information, see [Adding user device and session data to API
10247
+ # requests][1].
10248
+ #
10249
+ #
10250
+ #
10251
+ # [1]: https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-adaptive-authentication.html#user-pool-settings-adaptive-authentication-device-fingerprint
9842
10252
  # @return [String]
9843
10253
  #
9844
10254
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/UserContextDataType AWS API Documentation
9845
10255
  #
9846
10256
  class UserContextDataType < Struct.new(
10257
+ :ip_address,
9847
10258
  :encoded_data)
9848
10259
  SENSITIVE = []
9849
10260
  include Aws::Structure
@@ -10093,24 +10504,52 @@ module Aws::CognitoIdentityProvider
10093
10504
  # @return [Time]
10094
10505
  #
10095
10506
  # @!attribute [rw] refresh_token_validity
10096
- # The time limit, in days, after which the refresh token is no longer
10097
- # valid and can't be used.
10507
+ # The refresh token time limit. After this limit expires, your user
10508
+ # can't use their refresh token. To specify the time unit for
10509
+ # `RefreshTokenValidity` as `seconds`, `minutes`, `hours`, or `days`,
10510
+ # set a `TokenValidityUnits` value in your API request.
10511
+ #
10512
+ # For example, when you set `RefreshTokenValidity` as `10` and
10513
+ # `TokenValidityUnits` as `days`, your user can refresh their session
10514
+ # and retrieve new access and ID tokens for 10 days.
10515
+ #
10516
+ # The default time unit for `RefreshTokenValidity` in an API request
10517
+ # is days. You can't set `RefreshTokenValidity` to 0. If you do,
10518
+ # Amazon Cognito overrides the value with the default value of 30
10519
+ # days. *Valid range* is displayed below in seconds.
10098
10520
  # @return [Integer]
10099
10521
  #
10100
10522
  # @!attribute [rw] access_token_validity
10101
- # The time limit, specified by tokenValidityUnits, defaulting to
10102
- # hours, after which the access token is no longer valid and can't be
10103
- # used.
10523
+ # The access token time limit. After this limit expires, your user
10524
+ # can't use their access token. To specify the time unit for
10525
+ # `AccessTokenValidity` as `seconds`, `minutes`, `hours`, or `days`,
10526
+ # set a `TokenValidityUnits` value in your API request.
10527
+ #
10528
+ # For example, when you set `AccessTokenValidity` to `10` and
10529
+ # `TokenValidityUnits` to `hours`, your user can authorize access with
10530
+ # their access token for 10 hours.
10531
+ #
10532
+ # The default time unit for `AccessTokenValidity` in an API request is
10533
+ # hours. *Valid range* is displayed below in seconds.
10104
10534
  # @return [Integer]
10105
10535
  #
10106
10536
  # @!attribute [rw] id_token_validity
10107
- # The time limit specified by tokenValidityUnits, defaulting to hours,
10108
- # after which the refresh token is no longer valid and can't be used.
10537
+ # The ID token time limit. After this limit expires, your user can't
10538
+ # use their ID token. To specify the time unit for `IdTokenValidity`
10539
+ # as `seconds`, `minutes`, `hours`, or `days`, set a
10540
+ # `TokenValidityUnits` value in your API request.
10541
+ #
10542
+ # For example, when you set `IdTokenValidity` as `10` and
10543
+ # `TokenValidityUnits` as `hours`, your user can authenticate their
10544
+ # session with their ID token for 10 hours.
10545
+ #
10546
+ # The default time unit for `AccessTokenValidity` in an API request is
10547
+ # hours. *Valid range* is displayed below in seconds.
10109
10548
  # @return [Integer]
10110
10549
  #
10111
10550
  # @!attribute [rw] token_validity_units
10112
- # The time units used to specify the token validity times of their
10113
- # respective token.
10551
+ # The time units used to specify the token validity times of each
10552
+ # token type: ID, access, and refresh.
10114
10553
  # @return [Types::TokenValidityUnitsType]
10115
10554
  #
10116
10555
  # @!attribute [rw] read_attributes
@@ -10150,13 +10589,14 @@ module Aws::CognitoIdentityProvider
10150
10589
  # @return [Array<String>]
10151
10590
  #
10152
10591
  # @!attribute [rw] supported_identity_providers
10153
- # A list of provider names for the identity providers that are
10154
- # supported on this client.
10592
+ # A list of provider names for the IdPs that this client supports. The
10593
+ # following are supported: `COGNITO`, `Facebook`, `Google`
10594
+ # `LoginWithAmazon`, and the names of your own SAML and OIDC
10595
+ # providers.
10155
10596
  # @return [Array<String>]
10156
10597
  #
10157
10598
  # @!attribute [rw] callback_urls
10158
- # A list of allowed redirect (callback) URLs for the identity
10159
- # providers.
10599
+ # A list of allowed redirect (callback) URLs for the IdPs.
10160
10600
  #
10161
10601
  # A redirect URI must:
10162
10602
  #
@@ -10179,7 +10619,7 @@ module Aws::CognitoIdentityProvider
10179
10619
  # @return [Array<String>]
10180
10620
  #
10181
10621
  # @!attribute [rw] logout_urls
10182
- # A list of allowed logout URLs for the identity providers.
10622
+ # A list of allowed logout URLs for the IdPs.
10183
10623
  # @return [Array<String>]
10184
10624
  #
10185
10625
  # @!attribute [rw] default_redirect_uri
@@ -10208,23 +10648,30 @@ module Aws::CognitoIdentityProvider
10208
10648
  # @!attribute [rw] allowed_o_auth_flows
10209
10649
  # The allowed OAuth flows.
10210
10650
  #
10211
- # Set to `code` to initiate a code grant flow, which provides an
10212
- # authorization code as the response. This code can be exchanged for
10213
- # access tokens with the token endpoint.
10651
+ # code
10652
+ #
10653
+ # : Use a code grant flow, which provides an authorization code as the
10654
+ # response. This code can be exchanged for access tokens with the
10655
+ # `/oauth2/token` endpoint.
10214
10656
  #
10215
- # Set to `implicit` to specify that the client should get the access
10216
- # token (and, optionally, ID token, based on scopes) directly.
10657
+ # implicit
10217
10658
  #
10218
- # Set to `client_credentials` to specify that the client should get
10219
- # the access token (and, optionally, ID token, based on scopes) from
10220
- # the token endpoint using a combination of client and client\_secret.
10659
+ # : Issue the access token (and, optionally, ID token, based on
10660
+ # scopes) directly to your user.
10661
+ #
10662
+ # client\_credentials
10663
+ #
10664
+ # : Issue the access token from the `/oauth2/token` endpoint directly
10665
+ # to a non-person user using a combination of the client ID and
10666
+ # client secret.
10221
10667
  # @return [Array<String>]
10222
10668
  #
10223
10669
  # @!attribute [rw] allowed_o_auth_scopes
10224
- # The allowed OAuth scopes. Possible values provided by OAuth are:
10225
- # `phone`, `email`, `openid`, and `profile`. Possible values provided
10226
- # by Amazon Web Services are: `aws.cognito.signin.user.admin`. Custom
10227
- # scopes created in Resource Servers are also supported.
10670
+ # The OAuth scopes that your app client supports. Possible values that
10671
+ # OAuth provides are `phone`, `email`, `openid`, and `profile`.
10672
+ # Possible values that Amazon Web Services provides are
10673
+ # `aws.cognito.signin.user.admin`. Amazon Cognito also supports custom
10674
+ # scopes that you create in Resource Servers.
10228
10675
  # @return [Array<String>]
10229
10676
  #
10230
10677
  # @!attribute [rw] allowed_o_auth_flows_user_pool_client
@@ -10236,9 +10683,9 @@ module Aws::CognitoIdentityProvider
10236
10683
  # The Amazon Pinpoint analytics configuration for the user pool
10237
10684
  # client.
10238
10685
  #
10239
- # <note markdown="1"> Amazon Cognito User Pools only supports sending events to Amazon
10686
+ # <note markdown="1"> Amazon Cognito user pools only support sending events to Amazon
10240
10687
  # Pinpoint projects in the US East (N. Virginia) us-east-1 Region,
10241
- # regardless of the Region in which the user pool resides.
10688
+ # regardless of the Region where the user pool resides.
10242
10689
  #
10243
10690
  # </note>
10244
10691
  # @return [Types::AnalyticsConfigurationType]
@@ -10258,8 +10705,8 @@ module Aws::CognitoIdentityProvider
10258
10705
  #
10259
10706
  # * `ENABLED` - This prevents user existence-related errors.
10260
10707
  #
10261
- # * `LEGACY` - This represents the old behavior of Cognito where user
10262
- # existence related errors aren't prevented.
10708
+ # * `LEGACY` - This represents the old behavior of Amazon Cognito
10709
+ # where user existence related errors aren't prevented.
10263
10710
  # @return [String]
10264
10711
  #
10265
10712
  # @!attribute [rw] enable_token_revocation
@@ -10273,6 +10720,33 @@ module Aws::CognitoIdentityProvider
10273
10720
  # [1]: https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_RevokeToken.html
10274
10721
  # @return [Boolean]
10275
10722
  #
10723
+ # @!attribute [rw] enable_propagate_additional_user_context_data
10724
+ # When `EnablePropagateAdditionalUserContextData` is true, Amazon
10725
+ # Cognito accepts an `IpAddress` value that you send in the
10726
+ # `UserContextData` parameter. The `UserContextData` parameter sends
10727
+ # information to Amazon Cognito advanced security for risk analysis.
10728
+ # You can send `UserContextData` when you sign in Amazon Cognito
10729
+ # native users with the `InitiateAuth` and `RespondToAuthChallenge`
10730
+ # API operations.
10731
+ #
10732
+ # When `EnablePropagateAdditionalUserContextData` is false, you can't
10733
+ # send your user's source IP address to Amazon Cognito advanced
10734
+ # security with unauthenticated API operations.
10735
+ # `EnablePropagateAdditionalUserContextData` doesn't affect whether
10736
+ # you can send a source IP address in a `ContextData` parameter with
10737
+ # the authenticated API operations `AdminInitiateAuth` and
10738
+ # `AdminRespondToAuthChallenge`.
10739
+ #
10740
+ # You can only activate `EnablePropagateAdditionalUserContextData` in
10741
+ # an app client that has a client secret. For more information about
10742
+ # propagation of user context data, see [Adding user device and
10743
+ # session data to API requests][1].
10744
+ #
10745
+ #
10746
+ #
10747
+ # [1]: https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-adaptive-authentication.html#user-pool-settings-adaptive-authentication-device-fingerprint
10748
+ # @return [Boolean]
10749
+ #
10276
10750
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/UserPoolClientType AWS API Documentation
10277
10751
  #
10278
10752
  class UserPoolClientType < Struct.new(
@@ -10298,7 +10772,8 @@ module Aws::CognitoIdentityProvider
10298
10772
  :allowed_o_auth_flows_user_pool_client,
10299
10773
  :analytics_configuration,
10300
10774
  :prevent_user_existence_errors,
10301
- :enable_token_revocation)
10775
+ :enable_token_revocation,
10776
+ :enable_propagate_additional_user_context_data)
10302
10777
  SENSITIVE = [:client_id, :client_secret]
10303
10778
  include Aws::Structure
10304
10779
  end
@@ -10451,6 +10926,19 @@ module Aws::CognitoIdentityProvider
10451
10926
  # The contents of the SMS authentication message.
10452
10927
  # @return [String]
10453
10928
  #
10929
+ # @!attribute [rw] user_attribute_update_settings
10930
+ # The settings for updates to user attributes. These settings include
10931
+ # the property `AttributesRequireVerificationBeforeUpdate`, a
10932
+ # user-pool setting that tells Amazon Cognito how to handle changes to
10933
+ # the value of your users' email address and phone number attributes.
10934
+ # For more information, see [ Verifying updates to to email addresses
10935
+ # and phone numbers][1].
10936
+ #
10937
+ #
10938
+ #
10939
+ # [1]: https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-email-phone-verification.html#user-pool-settings-verifications-verify-attribute-updates
10940
+ # @return [Types::UserAttributeUpdateSettingsType]
10941
+ #
10454
10942
  # @!attribute [rw] mfa_configuration
10455
10943
  # Can be one of the following values:
10456
10944
  #
@@ -10473,11 +10961,18 @@ module Aws::CognitoIdentityProvider
10473
10961
  # @return [Integer]
10474
10962
  #
10475
10963
  # @!attribute [rw] email_configuration
10476
- # The email configuration.
10964
+ # The email configuration of your user pool. The email configuration
10965
+ # type sets your preferred sending method, Amazon Web Services Region,
10966
+ # and sender for messages tfrom your user pool.
10477
10967
  # @return [Types::EmailConfigurationType]
10478
10968
  #
10479
10969
  # @!attribute [rw] sms_configuration
10480
- # The SMS configuration.
10970
+ # The SMS configuration with the settings that your Amazon Cognito
10971
+ # user pool must use to send an SMS message from your Amazon Web
10972
+ # Services account through Amazon Simple Notification Service. To send
10973
+ # SMS messages with Amazon SNS in the Amazon Web Services Region that
10974
+ # you want, the Amazon Cognito user pool uses an Identity and Access
10975
+ # Management (IAM) role in your Amazon Web Services account.
10481
10976
  # @return [Types::SmsConfigurationType]
10482
10977
  #
10483
10978
  # @!attribute [rw] user_pool_tags
@@ -10494,12 +10989,15 @@ module Aws::CognitoIdentityProvider
10494
10989
  # This message might include comma-separated values to describe why
10495
10990
  # your SMS configuration can't send messages to user pool end users.
10496
10991
  #
10497
- # * InvalidSmsRoleAccessPolicyException - The Identity and Access
10498
- # Management role that Amazon Cognito uses to send SMS messages
10499
- # isn't properly configured. For more information, see
10500
- # [SmsConfigurationType][1].
10992
+ # InvalidSmsRoleAccessPolicyException
10993
+ #
10994
+ # : The Identity and Access Management role that Amazon Cognito uses
10995
+ # to send SMS messages isn't properly configured. For more
10996
+ # information, see [SmsConfigurationType][1].
10997
+ #
10998
+ # SNSSandbox
10501
10999
  #
10502
- # * SNSSandbox - The Amazon Web Services account is in SNS Sandbox and
11000
+ # : The Amazon Web Services account is in the SNS SMS Sandbox and
10503
11001
  # messages will only reach verified end users. This parameter won’t
10504
11002
  # get populated with SNSSandbox if the IAM user creating the user
10505
11003
  # pool doesn’t have SNS permissions. To learn how to move your
@@ -10513,8 +11011,9 @@ module Aws::CognitoIdentityProvider
10513
11011
  # @return [String]
10514
11012
  #
10515
11013
  # @!attribute [rw] email_configuration_failure
10516
- # The reason why the email configuration can't send the messages to
10517
- # your users.
11014
+ # Deprecated. Review error codes from API requests with
11015
+ # `EventSource:cognito-idp.amazonaws.com` in CloudTrail for
11016
+ # information about problems with user pool email configuration.
10518
11017
  # @return [String]
10519
11018
  #
10520
11019
  # @!attribute [rw] domain
@@ -10589,6 +11088,7 @@ module Aws::CognitoIdentityProvider
10589
11088
  :email_verification_subject,
10590
11089
  :verification_message_template,
10591
11090
  :sms_authentication_message,
11091
+ :user_attribute_update_settings,
10592
11092
  :mfa_configuration,
10593
11093
  :device_configuration,
10594
11094
  :estimated_number_of_users,
@@ -10608,7 +11108,7 @@ module Aws::CognitoIdentityProvider
10608
11108
  include Aws::Structure
10609
11109
  end
10610
11110
 
10611
- # The user type.
11111
+ # A user profile in a Amazon Cognito user pool.
10612
11112
  #
10613
11113
  # @!attribute [rw] username
10614
11114
  # The user name of the user you want to describe.
@@ -10637,9 +11137,9 @@ module Aws::CognitoIdentityProvider
10637
11137
  #
10638
11138
  # * CONFIRMED - User has been confirmed.
10639
11139
  #
10640
- # * ARCHIVED - User is no longer active.
11140
+ # * EXTERNAL\_PROVIDER - User signed in with a third-party IdP.
10641
11141
  #
10642
- # * COMPROMISED - User is disabled due to a potential security threat.
11142
+ # * ARCHIVED - User is no longer active.
10643
11143
  #
10644
11144
  # * UNKNOWN - User status isn't known.
10645
11145
  #
@@ -10680,21 +11180,25 @@ module Aws::CognitoIdentityProvider
10680
11180
  # }
10681
11181
  #
10682
11182
  # @!attribute [rw] case_sensitive
10683
- # Specifies whether username case sensitivity will be applied for all
11183
+ # Specifies whether user name case sensitivity will be applied for all
10684
11184
  # users in the user pool through Amazon Cognito APIs.
10685
11185
  #
10686
11186
  # Valid values include:
10687
11187
  #
10688
- # * <b> <code>True</code> </b>\: Enables case sensitivity for all
10689
- # username input. When this option is set to `True`, users must sign
10690
- # in using the exact capitalization of their given username, such as
10691
- # “UserName”. This is the default value.
11188
+ # True
10692
11189
  #
10693
- # * <b> <code>False</code> </b>\: Enables case insensitivity for all
10694
- # username input. For example, when this option is set to `False`,
10695
- # users can sign in using either "username" or "Username". This
10696
- # option also enables both `preferred_username` and `email` alias to
10697
- # be case insensitive, in addition to the `username` attribute.
11190
+ # : Enables case sensitivity for all username input. When this option
11191
+ # is set to `True`, users must sign in using the exact
11192
+ # capitalization of their given username, such as “UserName”. This
11193
+ # is the default value.
11194
+ #
11195
+ # False
11196
+ #
11197
+ # : Enables case insensitivity for all username input. For example,
11198
+ # when this option is set to `False`, users can sign in using either
11199
+ # "username" or "Username". This option also enables both
11200
+ # `preferred_username` and `email` alias to be case insensitive, in
11201
+ # addition to the `username` attribute.
10698
11202
  # @return [Boolean]
10699
11203
  #
10700
11204
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/UsernameConfigurationType AWS API Documentation
@@ -10736,12 +11240,16 @@ module Aws::CognitoIdentityProvider
10736
11240
  # }
10737
11241
  #
10738
11242
  # @!attribute [rw] sms_message
10739
- # The SMS message template.
11243
+ # The template for SMS messages that Amazon Cognito sends to your
11244
+ # users.
10740
11245
  # @return [String]
10741
11246
  #
10742
11247
  # @!attribute [rw] email_message
10743
- # The email message template. EmailMessage is allowed only if [
10744
- # EmailSendingAccount][1] is DEVELOPER.
11248
+ # The template for email messages that Amazon Cognito sends to your
11249
+ # users. You can set an `EmailMessage` template only if the value of [
11250
+ # EmailSendingAccount][1] is `DEVELOPER`. When your
11251
+ # [EmailSendingAccount][1] is `DEVELOPER`, your user pool sends email
11252
+ # messages with your own Amazon SES configuration.
10745
11253
  #
10746
11254
  #
10747
11255
  #
@@ -10749,8 +11257,11 @@ module Aws::CognitoIdentityProvider
10749
11257
  # @return [String]
10750
11258
  #
10751
11259
  # @!attribute [rw] email_subject
10752
- # The subject line for the email message template. EmailSubject is
10753
- # allowed only if [EmailSendingAccount][1] is DEVELOPER.
11260
+ # The subject line for the email message template. You can set an
11261
+ # `EmailSubject` template only if the value of [
11262
+ # EmailSendingAccount][1] is `DEVELOPER`. When your
11263
+ # [EmailSendingAccount][1] is `DEVELOPER`, your user pool sends email
11264
+ # messages with your own Amazon SES configuration.
10754
11265
  #
10755
11266
  #
10756
11267
  #
@@ -10759,8 +11270,10 @@ module Aws::CognitoIdentityProvider
10759
11270
  #
10760
11271
  # @!attribute [rw] email_message_by_link
10761
11272
  # The email message template for sending a confirmation link to the
10762
- # user. EmailMessageByLink is allowed only if [
10763
- # EmailSendingAccount][1] is DEVELOPER.
11273
+ # user. You can set an `EmailMessageByLink` template only if the value
11274
+ # of [ EmailSendingAccount][1] is `DEVELOPER`. When your
11275
+ # [EmailSendingAccount][1] is `DEVELOPER`, your user pool sends email
11276
+ # messages with your own Amazon SES configuration.
10764
11277
  #
10765
11278
  #
10766
11279
  #
@@ -10769,8 +11282,11 @@ module Aws::CognitoIdentityProvider
10769
11282
  #
10770
11283
  # @!attribute [rw] email_subject_by_link
10771
11284
  # The subject line for the email message template for sending a
10772
- # confirmation link to the user. EmailSubjectByLink is allowed only [
10773
- # EmailSendingAccount][1] is DEVELOPER.
11285
+ # confirmation link to the user. You can set an `EmailSubjectByLink`
11286
+ # template only if the value of [ EmailSendingAccount][1] is
11287
+ # `DEVELOPER`. When your [EmailSendingAccount][1] is `DEVELOPER`, your
11288
+ # user pool sends email messages with your own Amazon SES
11289
+ # configuration.
10774
11290
  #
10775
11291
  #
10776
11292
  #
@@ -10805,7 +11321,8 @@ module Aws::CognitoIdentityProvider
10805
11321
  # }
10806
11322
  #
10807
11323
  # @!attribute [rw] access_token
10808
- # The access token.
11324
+ # A valid access token that Amazon Cognito issued to the user whose
11325
+ # software token you want to verify.
10809
11326
  # @return [String]
10810
11327
  #
10811
11328
  # @!attribute [rw] session
@@ -10867,7 +11384,8 @@ module Aws::CognitoIdentityProvider
10867
11384
  # }
10868
11385
  #
10869
11386
  # @!attribute [rw] access_token
10870
- # The access token of the request to verify user attributes.
11387
+ # A valid access token that Amazon Cognito issued to the user whose
11388
+ # user attributes you want to verify.
10871
11389
  # @return [String]
10872
11390
  #
10873
11391
  # @!attribute [rw] attribute_name