aws-sdk-cognitoidentityprovider 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -8,6 +8,142 @@
8
8
  module Aws::CognitoIdentityProvider
9
9
  module Types
10
10
 
11
+ # Account takeover action type.
12
+ #
13
+ # @note When making an API call, you may pass AccountTakeoverActionType
14
+ # data as a hash:
15
+ #
16
+ # {
17
+ # notify: false, # required
18
+ # event_action: "BLOCK", # required, accepts BLOCK, MFA_IF_CONFIGURED, MFA_REQUIRED, NO_ACTION
19
+ # }
20
+ #
21
+ # @!attribute [rw] notify
22
+ # Flag specifying whether to send a notification.
23
+ # @return [Boolean]
24
+ #
25
+ # @!attribute [rw] event_action
26
+ # The event action.
27
+ #
28
+ # * `BLOCK` Choosing this action will block the request.
29
+ #
30
+ # * `MFA_IF_CONFIGURED` Throw MFA challenge if user has configured it,
31
+ # else allow the request.
32
+ #
33
+ # * `MFA_REQUIRED` Throw MFA challenge if user has configured it, else
34
+ # block the request.
35
+ #
36
+ # * `NO_ACTION` Allow the user sign-in.
37
+ # @return [String]
38
+ #
39
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AccountTakeoverActionType AWS API Documentation
40
+ #
41
+ class AccountTakeoverActionType < Struct.new(
42
+ :notify,
43
+ :event_action)
44
+ include Aws::Structure
45
+ end
46
+
47
+ # Account takeover actions type.
48
+ #
49
+ # @note When making an API call, you may pass AccountTakeoverActionsType
50
+ # data as a hash:
51
+ #
52
+ # {
53
+ # low_action: {
54
+ # notify: false, # required
55
+ # event_action: "BLOCK", # required, accepts BLOCK, MFA_IF_CONFIGURED, MFA_REQUIRED, NO_ACTION
56
+ # },
57
+ # medium_action: {
58
+ # notify: false, # required
59
+ # event_action: "BLOCK", # required, accepts BLOCK, MFA_IF_CONFIGURED, MFA_REQUIRED, NO_ACTION
60
+ # },
61
+ # high_action: {
62
+ # notify: false, # required
63
+ # event_action: "BLOCK", # required, accepts BLOCK, MFA_IF_CONFIGURED, MFA_REQUIRED, NO_ACTION
64
+ # },
65
+ # }
66
+ #
67
+ # @!attribute [rw] low_action
68
+ # Action to take for a low risk.
69
+ # @return [Types::AccountTakeoverActionType]
70
+ #
71
+ # @!attribute [rw] medium_action
72
+ # Action to take for a medium risk.
73
+ # @return [Types::AccountTakeoverActionType]
74
+ #
75
+ # @!attribute [rw] high_action
76
+ # Action to take for a high risk.
77
+ # @return [Types::AccountTakeoverActionType]
78
+ #
79
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AccountTakeoverActionsType AWS API Documentation
80
+ #
81
+ class AccountTakeoverActionsType < Struct.new(
82
+ :low_action,
83
+ :medium_action,
84
+ :high_action)
85
+ include Aws::Structure
86
+ end
87
+
88
+ # Configuration for mitigation actions and notification for different
89
+ # levels of risk detected for a potential account takeover.
90
+ #
91
+ # @note When making an API call, you may pass AccountTakeoverRiskConfigurationType
92
+ # data as a hash:
93
+ #
94
+ # {
95
+ # notify_configuration: {
96
+ # from: "StringType",
97
+ # reply_to: "StringType",
98
+ # source_arn: "ArnType", # required
99
+ # block_email: {
100
+ # subject: "EmailNotificationSubjectType", # required
101
+ # html_body: "EmailNotificationBodyType",
102
+ # text_body: "EmailNotificationBodyType",
103
+ # },
104
+ # no_action_email: {
105
+ # subject: "EmailNotificationSubjectType", # required
106
+ # html_body: "EmailNotificationBodyType",
107
+ # text_body: "EmailNotificationBodyType",
108
+ # },
109
+ # mfa_email: {
110
+ # subject: "EmailNotificationSubjectType", # required
111
+ # html_body: "EmailNotificationBodyType",
112
+ # text_body: "EmailNotificationBodyType",
113
+ # },
114
+ # },
115
+ # actions: { # required
116
+ # low_action: {
117
+ # notify: false, # required
118
+ # event_action: "BLOCK", # required, accepts BLOCK, MFA_IF_CONFIGURED, MFA_REQUIRED, NO_ACTION
119
+ # },
120
+ # medium_action: {
121
+ # notify: false, # required
122
+ # event_action: "BLOCK", # required, accepts BLOCK, MFA_IF_CONFIGURED, MFA_REQUIRED, NO_ACTION
123
+ # },
124
+ # high_action: {
125
+ # notify: false, # required
126
+ # event_action: "BLOCK", # required, accepts BLOCK, MFA_IF_CONFIGURED, MFA_REQUIRED, NO_ACTION
127
+ # },
128
+ # },
129
+ # }
130
+ #
131
+ # @!attribute [rw] notify_configuration
132
+ # The notify configuration used to construct email notifications.
133
+ # @return [Types::NotifyConfigurationType]
134
+ #
135
+ # @!attribute [rw] actions
136
+ # Account takeover risk configuration actions
137
+ # @return [Types::AccountTakeoverActionsType]
138
+ #
139
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AccountTakeoverRiskConfigurationType AWS API Documentation
140
+ #
141
+ class AccountTakeoverRiskConfigurationType < Struct.new(
142
+ :notify_configuration,
143
+ :actions)
144
+ include Aws::Structure
145
+ end
146
+
11
147
  # Represents the request to add custom attributes.
12
148
  #
13
149
  # @note When making an API call, you may pass AddCustomAttributesRequest
@@ -121,7 +257,7 @@ module Aws::CognitoIdentityProvider
121
257
  #
122
258
  class AdminConfirmSignUpResponse < Aws::EmptyStructure; end
123
259
 
124
- # The type of configuration for creating a new user profile.
260
+ # The configuration for creating a new user profile.
125
261
  #
126
262
  # @note When making an API call, you may pass AdminCreateUserConfigType
127
263
  # data as a hash:
@@ -152,6 +288,12 @@ module Aws::CognitoIdentityProvider
152
288
  # @!attribute [rw] invite_message_template
153
289
  # The message template to be used for the welcome message to new
154
290
  # users.
291
+ #
292
+ # See also [Customizing User Invitation Messages][1].
293
+ #
294
+ #
295
+ #
296
+ # [1]: http://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-message-customizations.html#cognito-user-pool-settings-user-invitation-message-customization
155
297
  # @return [Types::MessageTemplateType]
156
298
  #
157
299
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AdminCreateUserConfigType AWS API Documentation
@@ -204,10 +346,9 @@ module Aws::CognitoIdentityProvider
204
346
  # attribute values to be set for the user to be created. You can
205
347
  # create a user without specifying any attributes other than
206
348
  # `Username`. However, any attributes that you specify as required (in
207
- # [CreateUserPool](API_CreateUserPool.html) or in the **Attributes**
208
- # tab of the console) must be supplied either by you (in your call to
209
- # `AdminCreateUser`) or by the user (when he or she signs up in
210
- # response to your welcome message).
349
+ # or in the **Attributes** tab of the console) must be supplied either
350
+ # by you (in your call to `AdminCreateUser`) or by the user (when he
351
+ # or she signs up in response to your welcome message).
211
352
  #
212
353
  # For custom attributes, you must prepend the `custom:` prefix to the
213
354
  # attribute name.
@@ -219,8 +360,7 @@ module Aws::CognitoIdentityProvider
219
360
  #
220
361
  # In your call to `AdminCreateUser`, you can set the `email_verified`
221
362
  # attribute to `True`, and you can set the `phone_number_verified`
222
- # attribute to `True`. (You can also do this by calling
223
- # [AdminUpdateUserAttributes](API_AdminUpdateUserAttributes.html).)
363
+ # attribute to `True`. (You can also do this by calling .)
224
364
  #
225
365
  # * **email**\: The email address of the user to whom the message that
226
366
  # contains the code and username will be sent. Required if the
@@ -641,6 +781,12 @@ module Aws::CognitoIdentityProvider
641
781
  # Specifies the options for MFA (e.g., email or phone number).
642
782
  # @return [Array<Types::MFAOptionType>]
643
783
  #
784
+ # @!attribute [rw] preferred_mfa_setting
785
+ # @return [String]
786
+ #
787
+ # @!attribute [rw] user_mfa_setting_list
788
+ # @return [Array<String>]
789
+ #
644
790
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AdminGetUserResponse AWS API Documentation
645
791
  #
646
792
  class AdminGetUserResponse < Struct.new(
@@ -650,7 +796,9 @@ module Aws::CognitoIdentityProvider
650
796
  :user_last_modified_date,
651
797
  :enabled,
652
798
  :user_status,
653
- :mfa_options)
799
+ :mfa_options,
800
+ :preferred_mfa_setting,
801
+ :user_mfa_setting_list)
654
802
  include Aws::Structure
655
803
  end
656
804
 
@@ -669,6 +817,21 @@ module Aws::CognitoIdentityProvider
669
817
  # client_metadata: {
670
818
  # "StringType" => "StringType",
671
819
  # },
820
+ # analytics_metadata: {
821
+ # analytics_endpoint_id: "StringType",
822
+ # },
823
+ # context_data: {
824
+ # ip_address: "StringType", # required
825
+ # server_name: "StringType", # required
826
+ # server_path: "StringType", # required
827
+ # http_headers: [ # required
828
+ # {
829
+ # header_name: "StringType",
830
+ # header_value: "StringType",
831
+ # },
832
+ # ],
833
+ # encoded_data: "StringType",
834
+ # },
672
835
  # }
673
836
  #
674
837
  # @!attribute [rw] user_pool_id
@@ -733,6 +896,17 @@ module Aws::CognitoIdentityProvider
733
896
  # authentication.
734
897
  # @return [Hash<String,String>]
735
898
  #
899
+ # @!attribute [rw] analytics_metadata
900
+ # The analytics metadata for collecting Amazon Pinpoint metrics for
901
+ # `AdminInitiateAuth` calls.
902
+ # @return [Types::AnalyticsMetadataType]
903
+ #
904
+ # @!attribute [rw] context_data
905
+ # Contextual data such as the user's device fingerprint, IP address,
906
+ # or location used for evaluating the risk of an unexpected event by
907
+ # Amazon Cognito advanced security.
908
+ # @return [Types::ContextDataType]
909
+ #
736
910
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AdminInitiateAuthRequest AWS API Documentation
737
911
  #
738
912
  class AdminInitiateAuthRequest < Struct.new(
@@ -740,7 +914,9 @@ module Aws::CognitoIdentityProvider
740
914
  :client_id,
741
915
  :auth_flow,
742
916
  :auth_parameters,
743
- :client_metadata)
917
+ :client_metadata,
918
+ :analytics_metadata,
919
+ :context_data)
744
920
  include Aws::Structure
745
921
  end
746
922
 
@@ -850,9 +1026,14 @@ module Aws::CognitoIdentityProvider
850
1026
  # is thrown. This is the user that is returned when the new user (with
851
1027
  # the linked identity provider attribute) signs in.
852
1028
  #
853
- # The `ProviderAttributeValue` for the `DestinationUser` must match
854
- # the username for the user in the user pool. The
855
- # `ProviderAttributeName` will always be ignored.
1029
+ # For a native username + password user, the `ProviderAttributeValue`
1030
+ # for the `DestinationUser` should be the username in the user pool.
1031
+ # For a federated user, it should be the provider-specific `user_id`.
1032
+ #
1033
+ # The `ProviderAttributeName` of the `DestinationUser` is ignored.
1034
+ #
1035
+ # The `ProviderName` should be set to `Cognito` for users in Cognito
1036
+ # user pools.
856
1037
  # @return [Types::ProviderUserIdentifierType]
857
1038
  #
858
1039
  # @!attribute [rw] source_user
@@ -1008,6 +1189,59 @@ module Aws::CognitoIdentityProvider
1008
1189
  include Aws::Structure
1009
1190
  end
1010
1191
 
1192
+ # @note When making an API call, you may pass AdminListUserAuthEventsRequest
1193
+ # data as a hash:
1194
+ #
1195
+ # {
1196
+ # user_pool_id: "UserPoolIdType", # required
1197
+ # username: "UsernameType", # required
1198
+ # max_results: 1,
1199
+ # next_token: "PaginationKey",
1200
+ # }
1201
+ #
1202
+ # @!attribute [rw] user_pool_id
1203
+ # The user pool ID.
1204
+ # @return [String]
1205
+ #
1206
+ # @!attribute [rw] username
1207
+ # The user pool username.
1208
+ # @return [String]
1209
+ #
1210
+ # @!attribute [rw] max_results
1211
+ # The maximum number of authentication events to return.
1212
+ # @return [Integer]
1213
+ #
1214
+ # @!attribute [rw] next_token
1215
+ # A pagination token.
1216
+ # @return [String]
1217
+ #
1218
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AdminListUserAuthEventsRequest AWS API Documentation
1219
+ #
1220
+ class AdminListUserAuthEventsRequest < Struct.new(
1221
+ :user_pool_id,
1222
+ :username,
1223
+ :max_results,
1224
+ :next_token)
1225
+ include Aws::Structure
1226
+ end
1227
+
1228
+ # @!attribute [rw] auth_events
1229
+ # The response object. It includes the `EventID`, `EventType`,
1230
+ # `CreationDate`, `EventRisk`, and `EventResponse`.
1231
+ # @return [Array<Types::AuthEventType>]
1232
+ #
1233
+ # @!attribute [rw] next_token
1234
+ # A pagination token.
1235
+ # @return [String]
1236
+ #
1237
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AdminListUserAuthEventsResponse AWS API Documentation
1238
+ #
1239
+ class AdminListUserAuthEventsResponse < Struct.new(
1240
+ :auth_events,
1241
+ :next_token)
1242
+ include Aws::Structure
1243
+ end
1244
+
1011
1245
  # @note When making an API call, you may pass AdminRemoveUserFromGroupRequest
1012
1246
  # data as a hash:
1013
1247
  #
@@ -1082,11 +1316,26 @@ module Aws::CognitoIdentityProvider
1082
1316
  # {
1083
1317
  # user_pool_id: "UserPoolIdType", # required
1084
1318
  # client_id: "ClientIdType", # required
1085
- # challenge_name: "SMS_MFA", # required, accepts SMS_MFA, PASSWORD_VERIFIER, CUSTOM_CHALLENGE, DEVICE_SRP_AUTH, DEVICE_PASSWORD_VERIFIER, ADMIN_NO_SRP_AUTH, NEW_PASSWORD_REQUIRED
1319
+ # challenge_name: "SMS_MFA", # required, accepts SMS_MFA, SOFTWARE_TOKEN_MFA, SELECT_MFA_TYPE, MFA_SETUP, PASSWORD_VERIFIER, CUSTOM_CHALLENGE, DEVICE_SRP_AUTH, DEVICE_PASSWORD_VERIFIER, ADMIN_NO_SRP_AUTH, NEW_PASSWORD_REQUIRED
1086
1320
  # challenge_responses: {
1087
1321
  # "StringType" => "StringType",
1088
1322
  # },
1089
1323
  # session: "SessionType",
1324
+ # analytics_metadata: {
1325
+ # analytics_endpoint_id: "StringType",
1326
+ # },
1327
+ # context_data: {
1328
+ # ip_address: "StringType", # required
1329
+ # server_name: "StringType", # required
1330
+ # server_path: "StringType", # required
1331
+ # http_headers: [ # required
1332
+ # {
1333
+ # header_name: "StringType",
1334
+ # header_value: "StringType",
1335
+ # },
1336
+ # ],
1337
+ # encoded_data: "StringType",
1338
+ # },
1090
1339
  # }
1091
1340
  #
1092
1341
  # @!attribute [rw] user_pool_id
@@ -1098,8 +1347,7 @@ module Aws::CognitoIdentityProvider
1098
1347
  # @return [String]
1099
1348
  #
1100
1349
  # @!attribute [rw] challenge_name
1101
- # The challenge name. For more information, see
1102
- # [AdminInitiateAuth](API_AdminInitiateAuth.html).
1350
+ # The challenge name. For more information, see .
1103
1351
  # @return [String]
1104
1352
  #
1105
1353
  # @!attribute [rw] challenge_responses
@@ -1136,6 +1384,17 @@ module Aws::CognitoIdentityProvider
1136
1384
  # `RespondToAuthChallenge` API call.
1137
1385
  # @return [String]
1138
1386
  #
1387
+ # @!attribute [rw] analytics_metadata
1388
+ # The analytics metadata for collecting Amazon Pinpoint metrics for
1389
+ # `AdminRespondToAuthChallenge` calls.
1390
+ # @return [Types::AnalyticsMetadataType]
1391
+ #
1392
+ # @!attribute [rw] context_data
1393
+ # Contextual data such as the user's device fingerprint, IP address,
1394
+ # or location used for evaluating the risk of an unexpected event by
1395
+ # Amazon Cognito advanced security.
1396
+ # @return [Types::ContextDataType]
1397
+ #
1139
1398
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AdminRespondToAuthChallengeRequest AWS API Documentation
1140
1399
  #
1141
1400
  class AdminRespondToAuthChallengeRequest < Struct.new(
@@ -1143,30 +1402,28 @@ module Aws::CognitoIdentityProvider
1143
1402
  :client_id,
1144
1403
  :challenge_name,
1145
1404
  :challenge_responses,
1146
- :session)
1405
+ :session,
1406
+ :analytics_metadata,
1407
+ :context_data)
1147
1408
  include Aws::Structure
1148
1409
  end
1149
1410
 
1150
1411
  # Responds to the authentication challenge, as an administrator.
1151
1412
  #
1152
1413
  # @!attribute [rw] challenge_name
1153
- # The name of the challenge. For more information, see
1154
- # [AdminInitiateAuth](API_AdminInitiateAuth.html).
1414
+ # The name of the challenge. For more information, see .
1155
1415
  # @return [String]
1156
1416
  #
1157
1417
  # @!attribute [rw] session
1158
1418
  # The session which should be passed both ways in challenge-response
1159
- # calls to the service. If the [InitiateAuth](API_InitiateAuth.html)
1160
- # or [RespondToAuthChallenge](API_RespondToAuthChallenge.html) API
1161
- # call determines that the caller needs to go through another
1162
- # challenge, they return a session with other challenge parameters.
1163
- # This session should be passed as it is to the next
1164
- # `RespondToAuthChallenge` API call.
1419
+ # calls to the service. If the or API call determines that the caller
1420
+ # needs to go through another challenge, they return a session with
1421
+ # other challenge parameters. This session should be passed as it is
1422
+ # to the next `RespondToAuthChallenge` API call.
1165
1423
  # @return [String]
1166
1424
  #
1167
1425
  # @!attribute [rw] challenge_parameters
1168
- # The challenge parameters. For more information, see
1169
- # [AdminInitiateAuth](API_AdminInitiateAuth.html).
1426
+ # The challenge parameters. For more information, see .
1170
1427
  # @return [Hash<String,String>]
1171
1428
  #
1172
1429
  # @!attribute [rw] authentication_result
@@ -1184,6 +1441,52 @@ module Aws::CognitoIdentityProvider
1184
1441
  include Aws::Structure
1185
1442
  end
1186
1443
 
1444
+ # @note When making an API call, you may pass AdminSetUserMFAPreferenceRequest
1445
+ # data as a hash:
1446
+ #
1447
+ # {
1448
+ # sms_mfa_settings: {
1449
+ # enabled: false,
1450
+ # preferred_mfa: false,
1451
+ # },
1452
+ # software_token_mfa_settings: {
1453
+ # enabled: false,
1454
+ # preferred_mfa: false,
1455
+ # },
1456
+ # username: "UsernameType", # required
1457
+ # user_pool_id: "UserPoolIdType", # required
1458
+ # }
1459
+ #
1460
+ # @!attribute [rw] sms_mfa_settings
1461
+ # The SMS text message MFA settings.
1462
+ # @return [Types::SMSMfaSettingsType]
1463
+ #
1464
+ # @!attribute [rw] software_token_mfa_settings
1465
+ # The time-based one-time password software token MFA settings.
1466
+ # @return [Types::SoftwareTokenMfaSettingsType]
1467
+ #
1468
+ # @!attribute [rw] username
1469
+ # The user pool username.
1470
+ # @return [String]
1471
+ #
1472
+ # @!attribute [rw] user_pool_id
1473
+ # The user pool ID.
1474
+ # @return [String]
1475
+ #
1476
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AdminSetUserMFAPreferenceRequest AWS API Documentation
1477
+ #
1478
+ class AdminSetUserMFAPreferenceRequest < Struct.new(
1479
+ :sms_mfa_settings,
1480
+ :software_token_mfa_settings,
1481
+ :username,
1482
+ :user_pool_id)
1483
+ include Aws::Structure
1484
+ end
1485
+
1486
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AdminSetUserMFAPreferenceResponse AWS API Documentation
1487
+ #
1488
+ class AdminSetUserMFAPreferenceResponse < Aws::EmptyStructure; end
1489
+
1187
1490
  # Represents the request to set user settings as an administrator.
1188
1491
  #
1189
1492
  # @note When making an API call, you may pass AdminSetUserSettingsRequest
@@ -1229,6 +1532,46 @@ module Aws::CognitoIdentityProvider
1229
1532
  #
1230
1533
  class AdminSetUserSettingsResponse < Aws::EmptyStructure; end
1231
1534
 
1535
+ # @note When making an API call, you may pass AdminUpdateAuthEventFeedbackRequest
1536
+ # data as a hash:
1537
+ #
1538
+ # {
1539
+ # user_pool_id: "UserPoolIdType", # required
1540
+ # username: "UsernameType", # required
1541
+ # event_id: "EventIdType", # required
1542
+ # feedback_value: "Valid", # required, accepts Valid, Invalid
1543
+ # }
1544
+ #
1545
+ # @!attribute [rw] user_pool_id
1546
+ # The user pool ID.
1547
+ # @return [String]
1548
+ #
1549
+ # @!attribute [rw] username
1550
+ # The user pool username.
1551
+ # @return [String]
1552
+ #
1553
+ # @!attribute [rw] event_id
1554
+ # The authentication event ID.
1555
+ # @return [String]
1556
+ #
1557
+ # @!attribute [rw] feedback_value
1558
+ # The authentication event feedback value.
1559
+ # @return [String]
1560
+ #
1561
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AdminUpdateAuthEventFeedbackRequest AWS API Documentation
1562
+ #
1563
+ class AdminUpdateAuthEventFeedbackRequest < Struct.new(
1564
+ :user_pool_id,
1565
+ :username,
1566
+ :event_id,
1567
+ :feedback_value)
1568
+ include Aws::Structure
1569
+ end
1570
+
1571
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AdminUpdateAuthEventFeedbackResponse AWS API Documentation
1572
+ #
1573
+ class AdminUpdateAuthEventFeedbackResponse < Aws::EmptyStructure; end
1574
+
1232
1575
  # The request to update the device status, as an administrator.
1233
1576
  #
1234
1577
  # @note When making an API call, you may pass AdminUpdateDeviceStatusRequest
@@ -1356,6 +1699,115 @@ module Aws::CognitoIdentityProvider
1356
1699
  #
1357
1700
  class AdminUserGlobalSignOutResponse < Aws::EmptyStructure; end
1358
1701
 
1702
+ # The Amazon Pinpoint analytics configuration for collecting metrics for
1703
+ # a user pool.
1704
+ #
1705
+ # @note When making an API call, you may pass AnalyticsConfigurationType
1706
+ # data as a hash:
1707
+ #
1708
+ # {
1709
+ # application_id: "HexStringType", # required
1710
+ # role_arn: "ArnType", # required
1711
+ # external_id: "StringType", # required
1712
+ # user_data_shared: false,
1713
+ # }
1714
+ #
1715
+ # @!attribute [rw] application_id
1716
+ # The application ID for an Amazon Pinpoint application.
1717
+ # @return [String]
1718
+ #
1719
+ # @!attribute [rw] role_arn
1720
+ # The ARN of an IAM role that authorizes Amazon Cognito to publish
1721
+ # events to Amazon Pinpoint analytics.
1722
+ # @return [String]
1723
+ #
1724
+ # @!attribute [rw] external_id
1725
+ # The external ID.
1726
+ # @return [String]
1727
+ #
1728
+ # @!attribute [rw] user_data_shared
1729
+ # If `UserDataShared` is `true`, Amazon Cognito will include user data
1730
+ # in the events it publishes to Amazon Pinpoint analytics.
1731
+ # @return [Boolean]
1732
+ #
1733
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AnalyticsConfigurationType AWS API Documentation
1734
+ #
1735
+ class AnalyticsConfigurationType < Struct.new(
1736
+ :application_id,
1737
+ :role_arn,
1738
+ :external_id,
1739
+ :user_data_shared)
1740
+ include Aws::Structure
1741
+ end
1742
+
1743
+ # An Amazon Pinpoint analytics endpoint.
1744
+ #
1745
+ # An endpoint uniquely identifies a mobile device, email address, or
1746
+ # phone number that can receive messages from Amazon Pinpoint analytics.
1747
+ #
1748
+ # @note When making an API call, you may pass AnalyticsMetadataType
1749
+ # data as a hash:
1750
+ #
1751
+ # {
1752
+ # analytics_endpoint_id: "StringType",
1753
+ # }
1754
+ #
1755
+ # @!attribute [rw] analytics_endpoint_id
1756
+ # The endpoint ID.
1757
+ # @return [String]
1758
+ #
1759
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AnalyticsMetadataType AWS API Documentation
1760
+ #
1761
+ class AnalyticsMetadataType < Struct.new(
1762
+ :analytics_endpoint_id)
1763
+ include Aws::Structure
1764
+ end
1765
+
1766
+ # @note When making an API call, you may pass AssociateSoftwareTokenRequest
1767
+ # data as a hash:
1768
+ #
1769
+ # {
1770
+ # access_token: "TokenModelType",
1771
+ # session: "SessionType",
1772
+ # }
1773
+ #
1774
+ # @!attribute [rw] access_token
1775
+ # The access token.
1776
+ # @return [String]
1777
+ #
1778
+ # @!attribute [rw] session
1779
+ # The session which should be passed both ways in challenge-response
1780
+ # calls to the service. This allows authentication of the user as part
1781
+ # of the MFA setup process.
1782
+ # @return [String]
1783
+ #
1784
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AssociateSoftwareTokenRequest AWS API Documentation
1785
+ #
1786
+ class AssociateSoftwareTokenRequest < Struct.new(
1787
+ :access_token,
1788
+ :session)
1789
+ include Aws::Structure
1790
+ end
1791
+
1792
+ # @!attribute [rw] secret_code
1793
+ # A unique generated shared secret code that is used in the TOTP
1794
+ # algorithm to generate a one time code.
1795
+ # @return [String]
1796
+ #
1797
+ # @!attribute [rw] session
1798
+ # The session which should be passed both ways in challenge-response
1799
+ # calls to the service. This allows authentication of the user as part
1800
+ # of the MFA setup process.
1801
+ # @return [String]
1802
+ #
1803
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AssociateSoftwareTokenResponse AWS API Documentation
1804
+ #
1805
+ class AssociateSoftwareTokenResponse < Struct.new(
1806
+ :secret_code,
1807
+ :session)
1808
+ include Aws::Structure
1809
+ end
1810
+
1359
1811
  # Specifies whether the attribute is standard or custom.
1360
1812
  #
1361
1813
  # @note When making an API call, you may pass AttributeType
@@ -1382,10 +1834,61 @@ module Aws::CognitoIdentityProvider
1382
1834
  include Aws::Structure
1383
1835
  end
1384
1836
 
1385
- # The result type of the authentication result.
1837
+ # The authentication event type.
1838
+ #
1839
+ # @!attribute [rw] event_id
1840
+ # The event ID.
1841
+ # @return [String]
1842
+ #
1843
+ # @!attribute [rw] event_type
1844
+ # The event type.
1845
+ # @return [String]
1846
+ #
1847
+ # @!attribute [rw] creation_date
1848
+ # The creation date
1849
+ # @return [Time]
1850
+ #
1851
+ # @!attribute [rw] event_response
1852
+ # The event response.
1853
+ # @return [String]
1854
+ #
1855
+ # @!attribute [rw] event_risk
1856
+ # The event risk.
1857
+ # @return [Types::EventRiskType]
1858
+ #
1859
+ # @!attribute [rw] challenge_responses
1860
+ # The challenge responses.
1861
+ # @return [Array<Types::ChallengeResponseType>]
1862
+ #
1863
+ # @!attribute [rw] event_context_data
1864
+ # The user context data captured at the time of an event request. It
1865
+ # provides additional information about the client from which event
1866
+ # the request is received.
1867
+ # @return [Types::EventContextDataType]
1868
+ #
1869
+ # @!attribute [rw] event_feedback
1870
+ # A flag specifying the user feedback captured at the time of an event
1871
+ # request is good or bad.
1872
+ # @return [Types::EventFeedbackType]
1873
+ #
1874
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/AuthEventType AWS API Documentation
1875
+ #
1876
+ class AuthEventType < Struct.new(
1877
+ :event_id,
1878
+ :event_type,
1879
+ :creation_date,
1880
+ :event_response,
1881
+ :event_risk,
1882
+ :challenge_responses,
1883
+ :event_context_data,
1884
+ :event_feedback)
1885
+ include Aws::Structure
1886
+ end
1887
+
1888
+ # The authentication result.
1386
1889
  #
1387
1890
  # @!attribute [rw] access_token
1388
- # The access token of the authentication result.
1891
+ # The access token.
1389
1892
  # @return [String]
1390
1893
  #
1391
1894
  # @!attribute [rw] expires_in
@@ -1393,15 +1896,15 @@ module Aws::CognitoIdentityProvider
1393
1896
  # @return [Integer]
1394
1897
  #
1395
1898
  # @!attribute [rw] token_type
1396
- # The token type of the authentication result.
1899
+ # The token type.
1397
1900
  # @return [String]
1398
1901
  #
1399
1902
  # @!attribute [rw] refresh_token
1400
- # The refresh token of the authentication result.
1903
+ # The refresh token.
1401
1904
  # @return [String]
1402
1905
  #
1403
1906
  # @!attribute [rw] id_token
1404
- # The ID token of the authentication result.
1907
+ # The ID token.
1405
1908
  # @return [String]
1406
1909
  #
1407
1910
  # @!attribute [rw] new_device_metadata
@@ -1420,6 +1923,24 @@ module Aws::CognitoIdentityProvider
1420
1923
  include Aws::Structure
1421
1924
  end
1422
1925
 
1926
+ # The challenge response type.
1927
+ #
1928
+ # @!attribute [rw] challenge_name
1929
+ # The challenge name
1930
+ # @return [String]
1931
+ #
1932
+ # @!attribute [rw] challenge_response
1933
+ # The challenge response.
1934
+ # @return [String]
1935
+ #
1936
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/ChallengeResponseType AWS API Documentation
1937
+ #
1938
+ class ChallengeResponseType < Struct.new(
1939
+ :challenge_name,
1940
+ :challenge_response)
1941
+ include Aws::Structure
1942
+ end
1943
+
1423
1944
  # Represents the request to change a user password.
1424
1945
  #
1425
1946
  # @note When making an API call, you may pass ChangePasswordRequest
@@ -1432,15 +1953,15 @@ module Aws::CognitoIdentityProvider
1432
1953
  # }
1433
1954
  #
1434
1955
  # @!attribute [rw] previous_password
1435
- # The old password in the change password request.
1956
+ # The old password.
1436
1957
  # @return [String]
1437
1958
  #
1438
1959
  # @!attribute [rw] proposed_password
1439
- # The new password in the change password request.
1960
+ # The new password.
1440
1961
  # @return [String]
1441
1962
  #
1442
1963
  # @!attribute [rw] access_token
1443
- # The access token in the change password request.
1964
+ # The access token.
1444
1965
  # @return [String]
1445
1966
  #
1446
1967
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/ChangePasswordRequest AWS API Documentation
@@ -1458,7 +1979,7 @@ module Aws::CognitoIdentityProvider
1458
1979
  #
1459
1980
  class ChangePasswordResponse < Aws::EmptyStructure; end
1460
1981
 
1461
- # The type of code delivery details being returned from the server.
1982
+ # The code delivery details being returned from the server.
1462
1983
  #
1463
1984
  # @!attribute [rw] destination
1464
1985
  # The destination for the code delivery details.
@@ -1469,7 +1990,7 @@ module Aws::CognitoIdentityProvider
1469
1990
  # @return [String]
1470
1991
  #
1471
1992
  # @!attribute [rw] attribute_name
1472
- # The name of the attribute in the code delivery details type.
1993
+ # The attribute name.
1473
1994
  # @return [String]
1474
1995
  #
1475
1996
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/CodeDeliveryDetailsType AWS API Documentation
@@ -1481,6 +2002,55 @@ module Aws::CognitoIdentityProvider
1481
2002
  include Aws::Structure
1482
2003
  end
1483
2004
 
2005
+ # The compromised credentials actions type
2006
+ #
2007
+ # @note When making an API call, you may pass CompromisedCredentialsActionsType
2008
+ # data as a hash:
2009
+ #
2010
+ # {
2011
+ # event_action: "BLOCK", # required, accepts BLOCK, NO_ACTION
2012
+ # }
2013
+ #
2014
+ # @!attribute [rw] event_action
2015
+ # The event action.
2016
+ # @return [String]
2017
+ #
2018
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/CompromisedCredentialsActionsType AWS API Documentation
2019
+ #
2020
+ class CompromisedCredentialsActionsType < Struct.new(
2021
+ :event_action)
2022
+ include Aws::Structure
2023
+ end
2024
+
2025
+ # The compromised credentials risk configuration type.
2026
+ #
2027
+ # @note When making an API call, you may pass CompromisedCredentialsRiskConfigurationType
2028
+ # data as a hash:
2029
+ #
2030
+ # {
2031
+ # event_filter: ["SIGN_IN"], # accepts SIGN_IN, PASSWORD_CHANGE, SIGN_UP
2032
+ # actions: { # required
2033
+ # event_action: "BLOCK", # required, accepts BLOCK, NO_ACTION
2034
+ # },
2035
+ # }
2036
+ #
2037
+ # @!attribute [rw] event_filter
2038
+ # Perform the action for these events. The default is to perform all
2039
+ # events if no event filter is specified.
2040
+ # @return [Array<String>]
2041
+ #
2042
+ # @!attribute [rw] actions
2043
+ # The compromised credentials risk configuration actions.
2044
+ # @return [Types::CompromisedCredentialsActionsType]
2045
+ #
2046
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/CompromisedCredentialsRiskConfigurationType AWS API Documentation
2047
+ #
2048
+ class CompromisedCredentialsRiskConfigurationType < Struct.new(
2049
+ :event_filter,
2050
+ :actions)
2051
+ include Aws::Structure
2052
+ end
2053
+
1484
2054
  # Confirms the device request.
1485
2055
  #
1486
2056
  # @note When making an API call, you may pass ConfirmDeviceRequest
@@ -1547,6 +2117,12 @@ module Aws::CognitoIdentityProvider
1547
2117
  # username: "UsernameType", # required
1548
2118
  # confirmation_code: "ConfirmationCodeType", # required
1549
2119
  # password: "PasswordType", # required
2120
+ # analytics_metadata: {
2121
+ # analytics_endpoint_id: "StringType",
2122
+ # },
2123
+ # user_context_data: {
2124
+ # encoded_data: "StringType",
2125
+ # },
1550
2126
  # }
1551
2127
  #
1552
2128
  # @!attribute [rw] client_id
@@ -1567,7 +2143,6 @@ module Aws::CognitoIdentityProvider
1567
2143
  # @!attribute [rw] confirmation_code
1568
2144
  # The confirmation code sent by a user's request to retrieve a
1569
2145
  # forgotten password. For more information, see
1570
- # [ForgotPassword](API_ForgotPassword.html)
1571
2146
  # @return [String]
1572
2147
  #
1573
2148
  # @!attribute [rw] password
@@ -1575,6 +2150,17 @@ module Aws::CognitoIdentityProvider
1575
2150
  # password.
1576
2151
  # @return [String]
1577
2152
  #
2153
+ # @!attribute [rw] analytics_metadata
2154
+ # The Amazon Pinpoint analytics metadata for collecting metrics for
2155
+ # `ConfirmForgotPassword` calls.
2156
+ # @return [Types::AnalyticsMetadataType]
2157
+ #
2158
+ # @!attribute [rw] user_context_data
2159
+ # Contextual data such as the user's device fingerprint, IP address,
2160
+ # or location used for evaluating the risk of an unexpected event by
2161
+ # Amazon Cognito advanced security.
2162
+ # @return [Types::UserContextDataType]
2163
+ #
1578
2164
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/ConfirmForgotPasswordRequest AWS API Documentation
1579
2165
  #
1580
2166
  class ConfirmForgotPasswordRequest < Struct.new(
@@ -1582,7 +2168,9 @@ module Aws::CognitoIdentityProvider
1582
2168
  :secret_hash,
1583
2169
  :username,
1584
2170
  :confirmation_code,
1585
- :password)
2171
+ :password,
2172
+ :analytics_metadata,
2173
+ :user_context_data)
1586
2174
  include Aws::Structure
1587
2175
  end
1588
2176
 
@@ -1604,6 +2192,12 @@ module Aws::CognitoIdentityProvider
1604
2192
  # username: "UsernameType", # required
1605
2193
  # confirmation_code: "ConfirmationCodeType", # required
1606
2194
  # force_alias_creation: false,
2195
+ # analytics_metadata: {
2196
+ # analytics_endpoint_id: "StringType",
2197
+ # },
2198
+ # user_context_data: {
2199
+ # encoded_data: "StringType",
2200
+ # },
1607
2201
  # }
1608
2202
  #
1609
2203
  # @!attribute [rw] client_id
@@ -1635,6 +2229,17 @@ module Aws::CognitoIdentityProvider
1635
2229
  # **AliasExistsException** error.
1636
2230
  # @return [Boolean]
1637
2231
  #
2232
+ # @!attribute [rw] analytics_metadata
2233
+ # The Amazon Pinpoint analytics metadata for collecting metrics for
2234
+ # `ConfirmSignUp` calls.
2235
+ # @return [Types::AnalyticsMetadataType]
2236
+ #
2237
+ # @!attribute [rw] user_context_data
2238
+ # Contextual data such as the user's device fingerprint, IP address,
2239
+ # or location used for evaluating the risk of an unexpected event by
2240
+ # Amazon Cognito advanced security.
2241
+ # @return [Types::UserContextDataType]
2242
+ #
1638
2243
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/ConfirmSignUpRequest AWS API Documentation
1639
2244
  #
1640
2245
  class ConfirmSignUpRequest < Struct.new(
@@ -1642,7 +2247,9 @@ module Aws::CognitoIdentityProvider
1642
2247
  :secret_hash,
1643
2248
  :username,
1644
2249
  :confirmation_code,
1645
- :force_alias_creation)
2250
+ :force_alias_creation,
2251
+ :analytics_metadata,
2252
+ :user_context_data)
1646
2253
  include Aws::Structure
1647
2254
  end
1648
2255
 
@@ -1653,6 +2260,57 @@ module Aws::CognitoIdentityProvider
1653
2260
  #
1654
2261
  class ConfirmSignUpResponse < Aws::EmptyStructure; end
1655
2262
 
2263
+ # Contextual user data type used for evaluating the risk of an
2264
+ # unexpected event by Amazon Cognito advanced security.
2265
+ #
2266
+ # @note When making an API call, you may pass ContextDataType
2267
+ # data as a hash:
2268
+ #
2269
+ # {
2270
+ # ip_address: "StringType", # required
2271
+ # server_name: "StringType", # required
2272
+ # server_path: "StringType", # required
2273
+ # http_headers: [ # required
2274
+ # {
2275
+ # header_name: "StringType",
2276
+ # header_value: "StringType",
2277
+ # },
2278
+ # ],
2279
+ # encoded_data: "StringType",
2280
+ # }
2281
+ #
2282
+ # @!attribute [rw] ip_address
2283
+ # Source IP address of your user.
2284
+ # @return [String]
2285
+ #
2286
+ # @!attribute [rw] server_name
2287
+ # Your server endpoint where this API is invoked.
2288
+ # @return [String]
2289
+ #
2290
+ # @!attribute [rw] server_path
2291
+ # Your server path where this API is invoked.
2292
+ # @return [String]
2293
+ #
2294
+ # @!attribute [rw] http_headers
2295
+ # HttpHeaders received on your server in same order.
2296
+ # @return [Array<Types::HttpHeader>]
2297
+ #
2298
+ # @!attribute [rw] encoded_data
2299
+ # Encoded data containing device fingerprinting details, collected
2300
+ # using the Amazon Cognito context data collection library.
2301
+ # @return [String]
2302
+ #
2303
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/ContextDataType AWS API Documentation
2304
+ #
2305
+ class ContextDataType < Struct.new(
2306
+ :ip_address,
2307
+ :server_name,
2308
+ :server_path,
2309
+ :http_headers,
2310
+ :encoded_data)
2311
+ include Aws::Structure
2312
+ end
2313
+
1656
2314
  # @note When making an API call, you may pass CreateGroupRequest
1657
2315
  # data as a hash:
1658
2316
  #
@@ -1910,6 +2568,12 @@ module Aws::CognitoIdentityProvider
1910
2568
  # allowed_o_auth_flows: ["code"], # accepts code, implicit, client_credentials
1911
2569
  # allowed_o_auth_scopes: ["ScopeType"],
1912
2570
  # allowed_o_auth_flows_user_pool_client: false,
2571
+ # analytics_configuration: {
2572
+ # application_id: "HexStringType", # required
2573
+ # role_arn: "ArnType", # required
2574
+ # external_id: "StringType", # required
2575
+ # user_data_shared: false,
2576
+ # },
1913
2577
  # }
1914
2578
  #
1915
2579
  # @!attribute [rw] user_pool_id
@@ -1979,6 +2643,11 @@ module Aws::CognitoIdentityProvider
1979
2643
  # when interacting with Cognito user pools.
1980
2644
  # @return [Boolean]
1981
2645
  #
2646
+ # @!attribute [rw] analytics_configuration
2647
+ # The Amazon Pinpoint analytics configuration for collecting metrics
2648
+ # for this user pool.
2649
+ # @return [Types::AnalyticsConfigurationType]
2650
+ #
1982
2651
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/CreateUserPoolClientRequest AWS API Documentation
1983
2652
  #
1984
2653
  class CreateUserPoolClientRequest < Struct.new(
@@ -1995,7 +2664,8 @@ module Aws::CognitoIdentityProvider
1995
2664
  :default_redirect_uri,
1996
2665
  :allowed_o_auth_flows,
1997
2666
  :allowed_o_auth_scopes,
1998
- :allowed_o_auth_flows_user_pool_client)
2667
+ :allowed_o_auth_flows_user_pool_client,
2668
+ :analytics_configuration)
1999
2669
  include Aws::Structure
2000
2670
  end
2001
2671
 
@@ -2065,6 +2735,7 @@ module Aws::CognitoIdentityProvider
2065
2735
  # define_auth_challenge: "ArnType",
2066
2736
  # create_auth_challenge: "ArnType",
2067
2737
  # verify_auth_challenge_response: "ArnType",
2738
+ # pre_token_generation: "ArnType",
2068
2739
  # },
2069
2740
  # auto_verified_attributes: ["phone_number"], # accepts phone_number, email
2070
2741
  # alias_attributes: ["phone_number"], # accepts phone_number, email, preferred_username
@@ -2123,6 +2794,9 @@ module Aws::CognitoIdentityProvider
2123
2794
  # },
2124
2795
  # },
2125
2796
  # ],
2797
+ # user_pool_add_ons: {
2798
+ # advanced_security_mode: "OFF", # required, accepts OFF, AUDIT, ENFORCED
2799
+ # },
2126
2800
  # }
2127
2801
  #
2128
2802
  # @!attribute [rw] pool_name
@@ -2207,6 +2881,11 @@ module Aws::CognitoIdentityProvider
2207
2881
  # attributes can be standard or custom attributes.
2208
2882
  # @return [Array<Types::SchemaAttributeType>]
2209
2883
  #
2884
+ # @!attribute [rw] user_pool_add_ons
2885
+ # Used to enable advanced security risk detection. Set the key
2886
+ # `AdvancedSecurityMode` to the value "AUDIT".
2887
+ # @return [Types::UserPoolAddOnsType]
2888
+ #
2210
2889
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/CreateUserPoolRequest AWS API Documentation
2211
2890
  #
2212
2891
  class CreateUserPoolRequest < Struct.new(
@@ -2227,7 +2906,8 @@ module Aws::CognitoIdentityProvider
2227
2906
  :sms_configuration,
2228
2907
  :user_pool_tags,
2229
2908
  :admin_create_user_config,
2230
- :schema)
2909
+ :schema,
2910
+ :user_pool_add_ons)
2231
2911
  include Aws::Structure
2232
2912
  end
2233
2913
 
@@ -2518,6 +3198,41 @@ module Aws::CognitoIdentityProvider
2518
3198
  include Aws::Structure
2519
3199
  end
2520
3200
 
3201
+ # @note When making an API call, you may pass DescribeRiskConfigurationRequest
3202
+ # data as a hash:
3203
+ #
3204
+ # {
3205
+ # user_pool_id: "UserPoolIdType", # required
3206
+ # client_id: "ClientIdType",
3207
+ # }
3208
+ #
3209
+ # @!attribute [rw] user_pool_id
3210
+ # The user pool ID.
3211
+ # @return [String]
3212
+ #
3213
+ # @!attribute [rw] client_id
3214
+ # The app client ID.
3215
+ # @return [String]
3216
+ #
3217
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/DescribeRiskConfigurationRequest AWS API Documentation
3218
+ #
3219
+ class DescribeRiskConfigurationRequest < Struct.new(
3220
+ :user_pool_id,
3221
+ :client_id)
3222
+ include Aws::Structure
3223
+ end
3224
+
3225
+ # @!attribute [rw] risk_configuration
3226
+ # The risk configuration.
3227
+ # @return [Types::RiskConfigurationType]
3228
+ #
3229
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/DescribeRiskConfigurationResponse AWS API Documentation
3230
+ #
3231
+ class DescribeRiskConfigurationResponse < Struct.new(
3232
+ :risk_configuration)
3233
+ include Aws::Structure
3234
+ end
3235
+
2521
3236
  # Represents the request to describe the user import job.
2522
3237
  #
2523
3238
  # @note When making an API call, you may pass DescribeUserImportJobRequest
@@ -2663,7 +3378,7 @@ module Aws::CognitoIdentityProvider
2663
3378
  include Aws::Structure
2664
3379
  end
2665
3380
 
2666
- # The type of configuration for the user pool's device tracking.
3381
+ # The configuration for the user pool's device tracking.
2667
3382
  #
2668
3383
  # @note When making an API call, you may pass DeviceConfigurationType
2669
3384
  # data as a hash:
@@ -2807,7 +3522,7 @@ module Aws::CognitoIdentityProvider
2807
3522
  # @return [String]
2808
3523
  #
2809
3524
  # @!attribute [rw] reply_to_email_address
2810
- # The REPLY-TO email address.
3525
+ # The destination to which the receiver of the email should reply to.
2811
3526
  # @return [String]
2812
3527
  #
2813
3528
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/EmailConfigurationType AWS API Documentation
@@ -2818,6 +3533,81 @@ module Aws::CognitoIdentityProvider
2818
3533
  include Aws::Structure
2819
3534
  end
2820
3535
 
3536
+ # Specifies the user context data captured at the time of an event
3537
+ # request.
3538
+ #
3539
+ # @!attribute [rw] ip_address
3540
+ # The user's IP address.
3541
+ # @return [String]
3542
+ #
3543
+ # @!attribute [rw] device_name
3544
+ # The user's device name.
3545
+ # @return [String]
3546
+ #
3547
+ # @!attribute [rw] timezone
3548
+ # The user's time zone.
3549
+ # @return [String]
3550
+ #
3551
+ # @!attribute [rw] city
3552
+ # The user's city.
3553
+ # @return [String]
3554
+ #
3555
+ # @!attribute [rw] country
3556
+ # The user's country.
3557
+ # @return [String]
3558
+ #
3559
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/EventContextDataType AWS API Documentation
3560
+ #
3561
+ class EventContextDataType < Struct.new(
3562
+ :ip_address,
3563
+ :device_name,
3564
+ :timezone,
3565
+ :city,
3566
+ :country)
3567
+ include Aws::Structure
3568
+ end
3569
+
3570
+ # Specifies the event feedback type.
3571
+ #
3572
+ # @!attribute [rw] feedback_value
3573
+ # The event feedback value.
3574
+ # @return [String]
3575
+ #
3576
+ # @!attribute [rw] provider
3577
+ # The provider.
3578
+ # @return [String]
3579
+ #
3580
+ # @!attribute [rw] feedback_date
3581
+ # The event feedback date.
3582
+ # @return [Time]
3583
+ #
3584
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/EventFeedbackType AWS API Documentation
3585
+ #
3586
+ class EventFeedbackType < Struct.new(
3587
+ :feedback_value,
3588
+ :provider,
3589
+ :feedback_date)
3590
+ include Aws::Structure
3591
+ end
3592
+
3593
+ # The event risk type.
3594
+ #
3595
+ # @!attribute [rw] risk_decision
3596
+ # The risk decision.
3597
+ # @return [String]
3598
+ #
3599
+ # @!attribute [rw] risk_level
3600
+ # The risk level.
3601
+ # @return [String]
3602
+ #
3603
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/EventRiskType AWS API Documentation
3604
+ #
3605
+ class EventRiskType < Struct.new(
3606
+ :risk_decision,
3607
+ :risk_level)
3608
+ include Aws::Structure
3609
+ end
3610
+
2821
3611
  # Represents the request to forget the device.
2822
3612
  #
2823
3613
  # @note When making an API call, you may pass ForgetDeviceRequest
@@ -2852,7 +3642,13 @@ module Aws::CognitoIdentityProvider
2852
3642
  # {
2853
3643
  # client_id: "ClientIdType", # required
2854
3644
  # secret_hash: "SecretHashType",
3645
+ # user_context_data: {
3646
+ # encoded_data: "StringType",
3647
+ # },
2855
3648
  # username: "UsernameType", # required
3649
+ # analytics_metadata: {
3650
+ # analytics_endpoint_id: "StringType",
3651
+ # },
2856
3652
  # }
2857
3653
  #
2858
3654
  # @!attribute [rw] client_id
@@ -2865,17 +3661,30 @@ module Aws::CognitoIdentityProvider
2865
3661
  # the message.
2866
3662
  # @return [String]
2867
3663
  #
3664
+ # @!attribute [rw] user_context_data
3665
+ # Contextual data such as the user's device fingerprint, IP address,
3666
+ # or location used for evaluating the risk of an unexpected event by
3667
+ # Amazon Cognito advanced security.
3668
+ # @return [Types::UserContextDataType]
3669
+ #
2868
3670
  # @!attribute [rw] username
2869
3671
  # The user name of the user for whom you want to enter a code to reset
2870
3672
  # a forgotten password.
2871
3673
  # @return [String]
2872
3674
  #
3675
+ # @!attribute [rw] analytics_metadata
3676
+ # The Amazon Pinpoint analytics metadata for collecting metrics for
3677
+ # `ForgotPassword` calls.
3678
+ # @return [Types::AnalyticsMetadataType]
3679
+ #
2873
3680
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/ForgotPasswordRequest AWS API Documentation
2874
3681
  #
2875
3682
  class ForgotPasswordRequest < Struct.new(
2876
3683
  :client_id,
2877
3684
  :secret_hash,
2878
- :username)
3685
+ :user_context_data,
3686
+ :username,
3687
+ :analytics_metadata)
2879
3688
  include Aws::Structure
2880
3689
  end
2881
3690
 
@@ -3123,6 +3932,45 @@ module Aws::CognitoIdentityProvider
3123
3932
  include Aws::Structure
3124
3933
  end
3125
3934
 
3935
+ # @note When making an API call, you may pass GetUserPoolMfaConfigRequest
3936
+ # data as a hash:
3937
+ #
3938
+ # {
3939
+ # user_pool_id: "UserPoolIdType", # required
3940
+ # }
3941
+ #
3942
+ # @!attribute [rw] user_pool_id
3943
+ # The user pool ID.
3944
+ # @return [String]
3945
+ #
3946
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/GetUserPoolMfaConfigRequest AWS API Documentation
3947
+ #
3948
+ class GetUserPoolMfaConfigRequest < Struct.new(
3949
+ :user_pool_id)
3950
+ include Aws::Structure
3951
+ end
3952
+
3953
+ # @!attribute [rw] sms_mfa_configuration
3954
+ # The SMS text message multi-factor (MFA) configuration.
3955
+ # @return [Types::SmsMfaConfigType]
3956
+ #
3957
+ # @!attribute [rw] software_token_mfa_configuration
3958
+ # The software token multi-factor (MFA) configuration.
3959
+ # @return [Types::SoftwareTokenMfaConfigType]
3960
+ #
3961
+ # @!attribute [rw] mfa_configuration
3962
+ # The multi-factor (MFA) configuration.
3963
+ # @return [String]
3964
+ #
3965
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/GetUserPoolMfaConfigResponse AWS API Documentation
3966
+ #
3967
+ class GetUserPoolMfaConfigResponse < Struct.new(
3968
+ :sms_mfa_configuration,
3969
+ :software_token_mfa_configuration,
3970
+ :mfa_configuration)
3971
+ include Aws::Structure
3972
+ end
3973
+
3126
3974
  # Represents the request to get information about the user.
3127
3975
  #
3128
3976
  # @note When making an API call, you may pass GetUserRequest
@@ -3163,12 +4011,20 @@ module Aws::CognitoIdentityProvider
3163
4011
  # Specifies the options for MFA (e.g., email or phone number).
3164
4012
  # @return [Array<Types::MFAOptionType>]
3165
4013
  #
4014
+ # @!attribute [rw] preferred_mfa_setting
4015
+ # @return [String]
4016
+ #
4017
+ # @!attribute [rw] user_mfa_setting_list
4018
+ # @return [Array<String>]
4019
+ #
3166
4020
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/GetUserResponse AWS API Documentation
3167
4021
  #
3168
4022
  class GetUserResponse < Struct.new(
3169
4023
  :username,
3170
4024
  :user_attributes,
3171
- :mfa_options)
4025
+ :mfa_options,
4026
+ :preferred_mfa_setting,
4027
+ :user_mfa_setting_list)
3172
4028
  include Aws::Structure
3173
4029
  end
3174
4030
 
@@ -3257,6 +4113,32 @@ module Aws::CognitoIdentityProvider
3257
4113
  include Aws::Structure
3258
4114
  end
3259
4115
 
4116
+ # The HTTP header.
4117
+ #
4118
+ # @note When making an API call, you may pass HttpHeader
4119
+ # data as a hash:
4120
+ #
4121
+ # {
4122
+ # header_name: "StringType",
4123
+ # header_value: "StringType",
4124
+ # }
4125
+ #
4126
+ # @!attribute [rw] header_name
4127
+ # The header name
4128
+ # @return [String]
4129
+ #
4130
+ # @!attribute [rw] header_value
4131
+ # The header value.
4132
+ # @return [String]
4133
+ #
4134
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/HttpHeader AWS API Documentation
4135
+ #
4136
+ class HttpHeader < Struct.new(
4137
+ :header_name,
4138
+ :header_value)
4139
+ include Aws::Structure
4140
+ end
4141
+
3260
4142
  # A container for information about an identity provider.
3261
4143
  #
3262
4144
  # @!attribute [rw] user_pool_id
@@ -3321,6 +4203,12 @@ module Aws::CognitoIdentityProvider
3321
4203
  # "StringType" => "StringType",
3322
4204
  # },
3323
4205
  # client_id: "ClientIdType", # required
4206
+ # analytics_metadata: {
4207
+ # analytics_endpoint_id: "StringType",
4208
+ # },
4209
+ # user_context_data: {
4210
+ # encoded_data: "StringType",
4211
+ # },
3324
4212
  # }
3325
4213
  #
3326
4214
  # @!attribute [rw] auth_flow
@@ -3375,13 +4263,26 @@ module Aws::CognitoIdentityProvider
3375
4263
  # The app client ID.
3376
4264
  # @return [String]
3377
4265
  #
4266
+ # @!attribute [rw] analytics_metadata
4267
+ # The Amazon Pinpoint analytics metadata for collecting metrics for
4268
+ # `InitiateAuth` calls.
4269
+ # @return [Types::AnalyticsMetadataType]
4270
+ #
4271
+ # @!attribute [rw] user_context_data
4272
+ # Contextual data such as the user's device fingerprint, IP address,
4273
+ # or location used for evaluating the risk of an unexpected event by
4274
+ # Amazon Cognito advanced security.
4275
+ # @return [Types::UserContextDataType]
4276
+ #
3378
4277
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/InitiateAuthRequest AWS API Documentation
3379
4278
  #
3380
4279
  class InitiateAuthRequest < Struct.new(
3381
4280
  :auth_flow,
3382
4281
  :auth_parameters,
3383
4282
  :client_metadata,
3384
- :client_id)
4283
+ :client_id,
4284
+ :analytics_metadata,
4285
+ :user_context_data)
3385
4286
  include Aws::Structure
3386
4287
  end
3387
4288
 
@@ -3422,12 +4323,10 @@ module Aws::CognitoIdentityProvider
3422
4323
  #
3423
4324
  # @!attribute [rw] session
3424
4325
  # The session which should be passed both ways in challenge-response
3425
- # calls to the service. If the [InitiateAuth](API_InitiateAuth.html)
3426
- # or [RespondToAuthChallenge](API_RespondToAuthChallenge.html) API
3427
- # call determines that the caller needs to go through another
3428
- # challenge, they return a session with other challenge parameters.
3429
- # This session should be passed as it is to the next
3430
- # `RespondToAuthChallenge` API call.
4326
+ # calls to the service. If the or API call determines that the caller
4327
+ # needs to go through another challenge, they return a session with
4328
+ # other challenge parameters. This session should be passed as it is
4329
+ # to the next `RespondToAuthChallenge` API call.
3431
4330
  # @return [String]
3432
4331
  #
3433
4332
  # @!attribute [rw] challenge_parameters
@@ -3456,7 +4355,7 @@ module Aws::CognitoIdentityProvider
3456
4355
  include Aws::Structure
3457
4356
  end
3458
4357
 
3459
- # Specifies the type of configuration for AWS Lambda triggers.
4358
+ # Specifies the configuration for AWS Lambda triggers.
3460
4359
  #
3461
4360
  # @note When making an API call, you may pass LambdaConfigType
3462
4361
  # data as a hash:
@@ -3470,6 +4369,7 @@ module Aws::CognitoIdentityProvider
3470
4369
  # define_auth_challenge: "ArnType",
3471
4370
  # create_auth_challenge: "ArnType",
3472
4371
  # verify_auth_challenge_response: "ArnType",
4372
+ # pre_token_generation: "ArnType",
3473
4373
  # }
3474
4374
  #
3475
4375
  # @!attribute [rw] pre_sign_up
@@ -3504,6 +4404,10 @@ module Aws::CognitoIdentityProvider
3504
4404
  # Verifies the authentication challenge response.
3505
4405
  # @return [String]
3506
4406
  #
4407
+ # @!attribute [rw] pre_token_generation
4408
+ # A Lambda trigger that is invoked before token generation.
4409
+ # @return [String]
4410
+ #
3507
4411
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/LambdaConfigType AWS API Documentation
3508
4412
  #
3509
4413
  class LambdaConfigType < Struct.new(
@@ -3514,7 +4418,8 @@ module Aws::CognitoIdentityProvider
3514
4418
  :post_authentication,
3515
4419
  :define_auth_challenge,
3516
4420
  :create_auth_challenge,
3517
- :verify_auth_challenge_response)
4421
+ :verify_auth_challenge_response,
4422
+ :pre_token_generation)
3518
4423
  include Aws::Structure
3519
4424
  end
3520
4425
 
@@ -3947,7 +4852,7 @@ module Aws::CognitoIdentityProvider
3947
4852
  # @!attribute [rw] attributes_to_get
3948
4853
  # An array of strings, where each string is the name of a user
3949
4854
  # attribute to be returned for each user in the search results. If the
3950
- # array is empty, all attributes are returned.
4855
+ # array is null, all attributes are returned.
3951
4856
  # @return [Array<String>]
3952
4857
  #
3953
4858
  # @!attribute [rw] limit
@@ -4000,6 +4905,8 @@ module Aws::CognitoIdentityProvider
4000
4905
  #
4001
4906
  # * `status` (case-insensitive)
4002
4907
  #
4908
+ # * `sub`
4909
+ #
4003
4910
  # Custom attributes are not searchable.
4004
4911
  #
4005
4912
  # For more information, see [Searching for Users Using the ListUsers
@@ -4121,6 +5028,105 @@ module Aws::CognitoIdentityProvider
4121
5028
  include Aws::Structure
4122
5029
  end
4123
5030
 
5031
+ # The notify configuration type.
5032
+ #
5033
+ # @note When making an API call, you may pass NotifyConfigurationType
5034
+ # data as a hash:
5035
+ #
5036
+ # {
5037
+ # from: "StringType",
5038
+ # reply_to: "StringType",
5039
+ # source_arn: "ArnType", # required
5040
+ # block_email: {
5041
+ # subject: "EmailNotificationSubjectType", # required
5042
+ # html_body: "EmailNotificationBodyType",
5043
+ # text_body: "EmailNotificationBodyType",
5044
+ # },
5045
+ # no_action_email: {
5046
+ # subject: "EmailNotificationSubjectType", # required
5047
+ # html_body: "EmailNotificationBodyType",
5048
+ # text_body: "EmailNotificationBodyType",
5049
+ # },
5050
+ # mfa_email: {
5051
+ # subject: "EmailNotificationSubjectType", # required
5052
+ # html_body: "EmailNotificationBodyType",
5053
+ # text_body: "EmailNotificationBodyType",
5054
+ # },
5055
+ # }
5056
+ #
5057
+ # @!attribute [rw] from
5058
+ # The email address that is sending the email. It must be either
5059
+ # individually verified with Amazon SES, or from a domain that has
5060
+ # been verified with Amazon SES.
5061
+ # @return [String]
5062
+ #
5063
+ # @!attribute [rw] reply_to
5064
+ # The destination to which the receiver of an email should reply to.
5065
+ # @return [String]
5066
+ #
5067
+ # @!attribute [rw] source_arn
5068
+ # The Amazon Resource Name (ARN) of the identity that is associated
5069
+ # with the sending authorization policy. It permits Amazon Cognito to
5070
+ # send for the email address specified in the `From` parameter.
5071
+ # @return [String]
5072
+ #
5073
+ # @!attribute [rw] block_email
5074
+ # Email template used when a detected risk event is blocked.
5075
+ # @return [Types::NotifyEmailType]
5076
+ #
5077
+ # @!attribute [rw] no_action_email
5078
+ # The email template used when a detected risk event is allowed.
5079
+ # @return [Types::NotifyEmailType]
5080
+ #
5081
+ # @!attribute [rw] mfa_email
5082
+ # The MFA email template used when MFA is challenged as part of a
5083
+ # detected risk.
5084
+ # @return [Types::NotifyEmailType]
5085
+ #
5086
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/NotifyConfigurationType AWS API Documentation
5087
+ #
5088
+ class NotifyConfigurationType < Struct.new(
5089
+ :from,
5090
+ :reply_to,
5091
+ :source_arn,
5092
+ :block_email,
5093
+ :no_action_email,
5094
+ :mfa_email)
5095
+ include Aws::Structure
5096
+ end
5097
+
5098
+ # The notify email type.
5099
+ #
5100
+ # @note When making an API call, you may pass NotifyEmailType
5101
+ # data as a hash:
5102
+ #
5103
+ # {
5104
+ # subject: "EmailNotificationSubjectType", # required
5105
+ # html_body: "EmailNotificationBodyType",
5106
+ # text_body: "EmailNotificationBodyType",
5107
+ # }
5108
+ #
5109
+ # @!attribute [rw] subject
5110
+ # The subject.
5111
+ # @return [String]
5112
+ #
5113
+ # @!attribute [rw] html_body
5114
+ # The HTML body.
5115
+ # @return [String]
5116
+ #
5117
+ # @!attribute [rw] text_body
5118
+ # The text body.
5119
+ # @return [String]
5120
+ #
5121
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/NotifyEmailType AWS API Documentation
5122
+ #
5123
+ class NotifyEmailType < Struct.new(
5124
+ :subject,
5125
+ :html_body,
5126
+ :text_body)
5127
+ include Aws::Structure
5128
+ end
5129
+
4124
5130
  # The minimum and maximum value of an attribute that is of the number
4125
5131
  # data type.
4126
5132
  #
@@ -4271,7 +5277,13 @@ module Aws::CognitoIdentityProvider
4271
5277
  # {
4272
5278
  # client_id: "ClientIdType", # required
4273
5279
  # secret_hash: "SecretHashType",
5280
+ # user_context_data: {
5281
+ # encoded_data: "StringType",
5282
+ # },
4274
5283
  # username: "UsernameType", # required
5284
+ # analytics_metadata: {
5285
+ # analytics_endpoint_id: "StringType",
5286
+ # },
4275
5287
  # }
4276
5288
  #
4277
5289
  # @!attribute [rw] client_id
@@ -4284,17 +5296,30 @@ module Aws::CognitoIdentityProvider
4284
5296
  # the message.
4285
5297
  # @return [String]
4286
5298
  #
5299
+ # @!attribute [rw] user_context_data
5300
+ # Contextual data such as the user's device fingerprint, IP address,
5301
+ # or location used for evaluating the risk of an unexpected event by
5302
+ # Amazon Cognito advanced security.
5303
+ # @return [Types::UserContextDataType]
5304
+ #
4287
5305
  # @!attribute [rw] username
4288
5306
  # The user name of the user to whom you wish to resend a confirmation
4289
5307
  # code.
4290
5308
  # @return [String]
4291
5309
  #
5310
+ # @!attribute [rw] analytics_metadata
5311
+ # The Amazon Pinpoint analytics metadata for collecting metrics for
5312
+ # `ResendConfirmationCode` calls.
5313
+ # @return [Types::AnalyticsMetadataType]
5314
+ #
4292
5315
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/ResendConfirmationCodeRequest AWS API Documentation
4293
5316
  #
4294
5317
  class ResendConfirmationCodeRequest < Struct.new(
4295
5318
  :client_id,
4296
5319
  :secret_hash,
4297
- :username)
5320
+ :user_context_data,
5321
+ :username,
5322
+ :analytics_metadata)
4298
5323
  include Aws::Structure
4299
5324
  end
4300
5325
 
@@ -4374,11 +5399,17 @@ module Aws::CognitoIdentityProvider
4374
5399
  #
4375
5400
  # {
4376
5401
  # client_id: "ClientIdType", # required
4377
- # challenge_name: "SMS_MFA", # required, accepts SMS_MFA, PASSWORD_VERIFIER, CUSTOM_CHALLENGE, DEVICE_SRP_AUTH, DEVICE_PASSWORD_VERIFIER, ADMIN_NO_SRP_AUTH, NEW_PASSWORD_REQUIRED
5402
+ # challenge_name: "SMS_MFA", # required, accepts SMS_MFA, SOFTWARE_TOKEN_MFA, SELECT_MFA_TYPE, MFA_SETUP, PASSWORD_VERIFIER, CUSTOM_CHALLENGE, DEVICE_SRP_AUTH, DEVICE_PASSWORD_VERIFIER, ADMIN_NO_SRP_AUTH, NEW_PASSWORD_REQUIRED
4378
5403
  # session: "SessionType",
4379
5404
  # challenge_responses: {
4380
5405
  # "StringType" => "StringType",
4381
5406
  # },
5407
+ # analytics_metadata: {
5408
+ # analytics_endpoint_id: "StringType",
5409
+ # },
5410
+ # user_context_data: {
5411
+ # encoded_data: "StringType",
5412
+ # },
4382
5413
  # }
4383
5414
  #
4384
5415
  # @!attribute [rw] client_id
@@ -4386,8 +5417,7 @@ module Aws::CognitoIdentityProvider
4386
5417
  # @return [String]
4387
5418
  #
4388
5419
  # @!attribute [rw] challenge_name
4389
- # The challenge name. For more information, see
4390
- # [InitiateAuth](API_InitiateAuth.html).
5420
+ # The challenge name. For more information, see .
4391
5421
  #
4392
5422
  # `ADMIN_NO_SRP_AUTH` is not a valid value.
4393
5423
  # @return [String]
@@ -4417,36 +5447,45 @@ module Aws::CognitoIdentityProvider
4417
5447
  # with client secret).
4418
5448
  # @return [Hash<String,String>]
4419
5449
  #
5450
+ # @!attribute [rw] analytics_metadata
5451
+ # The Amazon Pinpoint analytics metadata for collecting metrics for
5452
+ # `RespondToAuthChallenge` calls.
5453
+ # @return [Types::AnalyticsMetadataType]
5454
+ #
5455
+ # @!attribute [rw] user_context_data
5456
+ # Contextual data such as the user's device fingerprint, IP address,
5457
+ # or location used for evaluating the risk of an unexpected event by
5458
+ # Amazon Cognito advanced security.
5459
+ # @return [Types::UserContextDataType]
5460
+ #
4420
5461
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/RespondToAuthChallengeRequest AWS API Documentation
4421
5462
  #
4422
5463
  class RespondToAuthChallengeRequest < Struct.new(
4423
5464
  :client_id,
4424
5465
  :challenge_name,
4425
5466
  :session,
4426
- :challenge_responses)
5467
+ :challenge_responses,
5468
+ :analytics_metadata,
5469
+ :user_context_data)
4427
5470
  include Aws::Structure
4428
5471
  end
4429
5472
 
4430
5473
  # The response to respond to the authentication challenge.
4431
5474
  #
4432
5475
  # @!attribute [rw] challenge_name
4433
- # The challenge name. For more information, see
4434
- # [InitiateAuth](API_InitiateAuth.html).
5476
+ # The challenge name. For more information, see .
4435
5477
  # @return [String]
4436
5478
  #
4437
5479
  # @!attribute [rw] session
4438
5480
  # The session which should be passed both ways in challenge-response
4439
- # calls to the service. If the [InitiateAuth](API_InitiateAuth.html)
4440
- # or [RespondToAuthChallenge](API_RespondToAuthChallenge.html) API
4441
- # call determines that the caller needs to go through another
4442
- # challenge, they return a session with other challenge parameters.
4443
- # This session should be passed as it is to the next
4444
- # `RespondToAuthChallenge` API call.
5481
+ # calls to the service. If the or API call determines that the caller
5482
+ # needs to go through another challenge, they return a session with
5483
+ # other challenge parameters. This session should be passed as it is
5484
+ # to the next `RespondToAuthChallenge` API call.
4445
5485
  # @return [String]
4446
5486
  #
4447
5487
  # @!attribute [rw] challenge_parameters
4448
- # The challenge parameters. For more information, see
4449
- # [InitiateAuth](API_InitiateAuth.html).
5488
+ # The challenge parameters. For more information, see .
4450
5489
  # @return [Hash<String,String>]
4451
5490
  #
4452
5491
  # @!attribute [rw] authentication_result
@@ -4464,6 +5503,102 @@ module Aws::CognitoIdentityProvider
4464
5503
  include Aws::Structure
4465
5504
  end
4466
5505
 
5506
+ # The risk configuration type.
5507
+ #
5508
+ # @!attribute [rw] user_pool_id
5509
+ # The user pool ID.
5510
+ # @return [String]
5511
+ #
5512
+ # @!attribute [rw] client_id
5513
+ # The app client ID.
5514
+ # @return [String]
5515
+ #
5516
+ # @!attribute [rw] compromised_credentials_risk_configuration
5517
+ # The compromised credentials risk configuration object including the
5518
+ # `EventFilter` and the `EventAction`
5519
+ # @return [Types::CompromisedCredentialsRiskConfigurationType]
5520
+ #
5521
+ # @!attribute [rw] account_takeover_risk_configuration
5522
+ # The account takeover risk configuration object including the
5523
+ # `NotifyConfiguration` object and `Actions` to take in the case of an
5524
+ # account takeover.
5525
+ # @return [Types::AccountTakeoverRiskConfigurationType]
5526
+ #
5527
+ # @!attribute [rw] risk_exception_configuration
5528
+ # The configuration to override the risk decision.
5529
+ # @return [Types::RiskExceptionConfigurationType]
5530
+ #
5531
+ # @!attribute [rw] last_modified_date
5532
+ # The last modified date.
5533
+ # @return [Time]
5534
+ #
5535
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/RiskConfigurationType AWS API Documentation
5536
+ #
5537
+ class RiskConfigurationType < Struct.new(
5538
+ :user_pool_id,
5539
+ :client_id,
5540
+ :compromised_credentials_risk_configuration,
5541
+ :account_takeover_risk_configuration,
5542
+ :risk_exception_configuration,
5543
+ :last_modified_date)
5544
+ include Aws::Structure
5545
+ end
5546
+
5547
+ # The type of the configuration to override the risk decision.
5548
+ #
5549
+ # @note When making an API call, you may pass RiskExceptionConfigurationType
5550
+ # data as a hash:
5551
+ #
5552
+ # {
5553
+ # blocked_ip_range_list: ["StringType"],
5554
+ # skipped_ip_range_list: ["StringType"],
5555
+ # }
5556
+ #
5557
+ # @!attribute [rw] blocked_ip_range_list
5558
+ # Overrides the risk decision to always block the pre-authentication
5559
+ # requests. The IP range is in CIDR notation: a compact representation
5560
+ # of an IP address and its associated routing prefix.
5561
+ # @return [Array<String>]
5562
+ #
5563
+ # @!attribute [rw] skipped_ip_range_list
5564
+ # Risk detection is not performed on the IP addresses in the range
5565
+ # list. The IP range is in CIDR notation.
5566
+ # @return [Array<String>]
5567
+ #
5568
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/RiskExceptionConfigurationType AWS API Documentation
5569
+ #
5570
+ class RiskExceptionConfigurationType < Struct.new(
5571
+ :blocked_ip_range_list,
5572
+ :skipped_ip_range_list)
5573
+ include Aws::Structure
5574
+ end
5575
+
5576
+ # The SMS multi-factor authentication (MFA) settings type.
5577
+ #
5578
+ # @note When making an API call, you may pass SMSMfaSettingsType
5579
+ # data as a hash:
5580
+ #
5581
+ # {
5582
+ # enabled: false,
5583
+ # preferred_mfa: false,
5584
+ # }
5585
+ #
5586
+ # @!attribute [rw] enabled
5587
+ # Specifies whether SMS text message MFA is enabled.
5588
+ # @return [Boolean]
5589
+ #
5590
+ # @!attribute [rw] preferred_mfa
5591
+ # The preferred MFA method.
5592
+ # @return [Boolean]
5593
+ #
5594
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/SMSMfaSettingsType AWS API Documentation
5595
+ #
5596
+ class SMSMfaSettingsType < Struct.new(
5597
+ :enabled,
5598
+ :preferred_mfa)
5599
+ include Aws::Structure
5600
+ end
5601
+
4467
5602
  # Contains information about the schema attribute.
4468
5603
  #
4469
5604
  # @note When making an API call, you may pass SchemaAttributeType
@@ -4529,6 +5664,109 @@ module Aws::CognitoIdentityProvider
4529
5664
  include Aws::Structure
4530
5665
  end
4531
5666
 
5667
+ # @note When making an API call, you may pass SetRiskConfigurationRequest
5668
+ # data as a hash:
5669
+ #
5670
+ # {
5671
+ # user_pool_id: "UserPoolIdType", # required
5672
+ # client_id: "ClientIdType",
5673
+ # compromised_credentials_risk_configuration: {
5674
+ # event_filter: ["SIGN_IN"], # accepts SIGN_IN, PASSWORD_CHANGE, SIGN_UP
5675
+ # actions: { # required
5676
+ # event_action: "BLOCK", # required, accepts BLOCK, NO_ACTION
5677
+ # },
5678
+ # },
5679
+ # account_takeover_risk_configuration: {
5680
+ # notify_configuration: {
5681
+ # from: "StringType",
5682
+ # reply_to: "StringType",
5683
+ # source_arn: "ArnType", # required
5684
+ # block_email: {
5685
+ # subject: "EmailNotificationSubjectType", # required
5686
+ # html_body: "EmailNotificationBodyType",
5687
+ # text_body: "EmailNotificationBodyType",
5688
+ # },
5689
+ # no_action_email: {
5690
+ # subject: "EmailNotificationSubjectType", # required
5691
+ # html_body: "EmailNotificationBodyType",
5692
+ # text_body: "EmailNotificationBodyType",
5693
+ # },
5694
+ # mfa_email: {
5695
+ # subject: "EmailNotificationSubjectType", # required
5696
+ # html_body: "EmailNotificationBodyType",
5697
+ # text_body: "EmailNotificationBodyType",
5698
+ # },
5699
+ # },
5700
+ # actions: { # required
5701
+ # low_action: {
5702
+ # notify: false, # required
5703
+ # event_action: "BLOCK", # required, accepts BLOCK, MFA_IF_CONFIGURED, MFA_REQUIRED, NO_ACTION
5704
+ # },
5705
+ # medium_action: {
5706
+ # notify: false, # required
5707
+ # event_action: "BLOCK", # required, accepts BLOCK, MFA_IF_CONFIGURED, MFA_REQUIRED, NO_ACTION
5708
+ # },
5709
+ # high_action: {
5710
+ # notify: false, # required
5711
+ # event_action: "BLOCK", # required, accepts BLOCK, MFA_IF_CONFIGURED, MFA_REQUIRED, NO_ACTION
5712
+ # },
5713
+ # },
5714
+ # },
5715
+ # risk_exception_configuration: {
5716
+ # blocked_ip_range_list: ["StringType"],
5717
+ # skipped_ip_range_list: ["StringType"],
5718
+ # },
5719
+ # }
5720
+ #
5721
+ # @!attribute [rw] user_pool_id
5722
+ # The user pool ID.
5723
+ # @return [String]
5724
+ #
5725
+ # @!attribute [rw] client_id
5726
+ # The app client ID. If `ClientId` is null, then the risk
5727
+ # configuration is mapped to `userPoolId`. When the client ID is null,
5728
+ # the same risk configuration is applied to all the clients in the
5729
+ # userPool.
5730
+ #
5731
+ # Otherwise, `ClientId` is mapped to the client. When the client ID is
5732
+ # not null, the user pool configuration is overridden and the risk
5733
+ # configuration for the client is used instead.
5734
+ # @return [String]
5735
+ #
5736
+ # @!attribute [rw] compromised_credentials_risk_configuration
5737
+ # The compromised credentials risk configuration.
5738
+ # @return [Types::CompromisedCredentialsRiskConfigurationType]
5739
+ #
5740
+ # @!attribute [rw] account_takeover_risk_configuration
5741
+ # The account takeover risk configuration.
5742
+ # @return [Types::AccountTakeoverRiskConfigurationType]
5743
+ #
5744
+ # @!attribute [rw] risk_exception_configuration
5745
+ # The configuration to override the risk decision.
5746
+ # @return [Types::RiskExceptionConfigurationType]
5747
+ #
5748
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/SetRiskConfigurationRequest AWS API Documentation
5749
+ #
5750
+ class SetRiskConfigurationRequest < Struct.new(
5751
+ :user_pool_id,
5752
+ :client_id,
5753
+ :compromised_credentials_risk_configuration,
5754
+ :account_takeover_risk_configuration,
5755
+ :risk_exception_configuration)
5756
+ include Aws::Structure
5757
+ end
5758
+
5759
+ # @!attribute [rw] risk_configuration
5760
+ # The risk configuration.
5761
+ # @return [Types::RiskConfigurationType]
5762
+ #
5763
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/SetRiskConfigurationResponse AWS API Documentation
5764
+ #
5765
+ class SetRiskConfigurationResponse < Struct.new(
5766
+ :risk_configuration)
5767
+ include Aws::Structure
5768
+ end
5769
+
4532
5770
  # @note When making an API call, you may pass SetUICustomizationRequest
4533
5771
  # data as a hash:
4534
5772
  #
@@ -4576,6 +5814,111 @@ module Aws::CognitoIdentityProvider
4576
5814
  include Aws::Structure
4577
5815
  end
4578
5816
 
5817
+ # @note When making an API call, you may pass SetUserMFAPreferenceRequest
5818
+ # data as a hash:
5819
+ #
5820
+ # {
5821
+ # sms_mfa_settings: {
5822
+ # enabled: false,
5823
+ # preferred_mfa: false,
5824
+ # },
5825
+ # software_token_mfa_settings: {
5826
+ # enabled: false,
5827
+ # preferred_mfa: false,
5828
+ # },
5829
+ # access_token: "TokenModelType", # required
5830
+ # }
5831
+ #
5832
+ # @!attribute [rw] sms_mfa_settings
5833
+ # The SMS text message multi-factor authentication (MFA) settings.
5834
+ # @return [Types::SMSMfaSettingsType]
5835
+ #
5836
+ # @!attribute [rw] software_token_mfa_settings
5837
+ # The time-based one-time password software token MFA settings.
5838
+ # @return [Types::SoftwareTokenMfaSettingsType]
5839
+ #
5840
+ # @!attribute [rw] access_token
5841
+ # The access token.
5842
+ # @return [String]
5843
+ #
5844
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/SetUserMFAPreferenceRequest AWS API Documentation
5845
+ #
5846
+ class SetUserMFAPreferenceRequest < Struct.new(
5847
+ :sms_mfa_settings,
5848
+ :software_token_mfa_settings,
5849
+ :access_token)
5850
+ include Aws::Structure
5851
+ end
5852
+
5853
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/SetUserMFAPreferenceResponse AWS API Documentation
5854
+ #
5855
+ class SetUserMFAPreferenceResponse < Aws::EmptyStructure; end
5856
+
5857
+ # @note When making an API call, you may pass SetUserPoolMfaConfigRequest
5858
+ # data as a hash:
5859
+ #
5860
+ # {
5861
+ # user_pool_id: "UserPoolIdType", # required
5862
+ # sms_mfa_configuration: {
5863
+ # sms_authentication_message: "SmsVerificationMessageType",
5864
+ # sms_configuration: {
5865
+ # sns_caller_arn: "ArnType", # required
5866
+ # external_id: "StringType",
5867
+ # },
5868
+ # },
5869
+ # software_token_mfa_configuration: {
5870
+ # enabled: false,
5871
+ # },
5872
+ # mfa_configuration: "OFF", # accepts OFF, ON, OPTIONAL
5873
+ # }
5874
+ #
5875
+ # @!attribute [rw] user_pool_id
5876
+ # The user pool ID.
5877
+ # @return [String]
5878
+ #
5879
+ # @!attribute [rw] sms_mfa_configuration
5880
+ # The SMS text message MFA configuration.
5881
+ # @return [Types::SmsMfaConfigType]
5882
+ #
5883
+ # @!attribute [rw] software_token_mfa_configuration
5884
+ # The software token MFA configuration.
5885
+ # @return [Types::SoftwareTokenMfaConfigType]
5886
+ #
5887
+ # @!attribute [rw] mfa_configuration
5888
+ # The MFA configuration.
5889
+ # @return [String]
5890
+ #
5891
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/SetUserPoolMfaConfigRequest AWS API Documentation
5892
+ #
5893
+ class SetUserPoolMfaConfigRequest < Struct.new(
5894
+ :user_pool_id,
5895
+ :sms_mfa_configuration,
5896
+ :software_token_mfa_configuration,
5897
+ :mfa_configuration)
5898
+ include Aws::Structure
5899
+ end
5900
+
5901
+ # @!attribute [rw] sms_mfa_configuration
5902
+ # The SMS text message MFA configuration.
5903
+ # @return [Types::SmsMfaConfigType]
5904
+ #
5905
+ # @!attribute [rw] software_token_mfa_configuration
5906
+ # The software token MFA configuration.
5907
+ # @return [Types::SoftwareTokenMfaConfigType]
5908
+ #
5909
+ # @!attribute [rw] mfa_configuration
5910
+ # The MFA configuration.
5911
+ # @return [String]
5912
+ #
5913
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/SetUserPoolMfaConfigResponse AWS API Documentation
5914
+ #
5915
+ class SetUserPoolMfaConfigResponse < Struct.new(
5916
+ :sms_mfa_configuration,
5917
+ :software_token_mfa_configuration,
5918
+ :mfa_configuration)
5919
+ include Aws::Structure
5920
+ end
5921
+
4579
5922
  # Represents the request to set user settings.
4580
5923
  #
4581
5924
  # @note When making an API call, you may pass SetUserSettingsRequest
@@ -4635,6 +5978,12 @@ module Aws::CognitoIdentityProvider
4635
5978
  # value: "AttributeValueType",
4636
5979
  # },
4637
5980
  # ],
5981
+ # analytics_metadata: {
5982
+ # analytics_endpoint_id: "StringType",
5983
+ # },
5984
+ # user_context_data: {
5985
+ # encoded_data: "StringType",
5986
+ # },
4638
5987
  # }
4639
5988
  #
4640
5989
  # @!attribute [rw] client_id
@@ -4666,6 +6015,17 @@ module Aws::CognitoIdentityProvider
4666
6015
  # The validation data in the request to register a user.
4667
6016
  # @return [Array<Types::AttributeType>]
4668
6017
  #
6018
+ # @!attribute [rw] analytics_metadata
6019
+ # The Amazon Pinpoint analytics metadata for collecting metrics for
6020
+ # `SignUp` calls.
6021
+ # @return [Types::AnalyticsMetadataType]
6022
+ #
6023
+ # @!attribute [rw] user_context_data
6024
+ # Contextual data such as the user's device fingerprint, IP address,
6025
+ # or location used for evaluating the risk of an unexpected event by
6026
+ # Amazon Cognito advanced security.
6027
+ # @return [Types::UserContextDataType]
6028
+ #
4669
6029
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/SignUpRequest AWS API Documentation
4670
6030
  #
4671
6031
  class SignUpRequest < Struct.new(
@@ -4674,7 +6034,9 @@ module Aws::CognitoIdentityProvider
4674
6034
  :username,
4675
6035
  :password,
4676
6036
  :user_attributes,
4677
- :validation_data)
6037
+ :validation_data,
6038
+ :analytics_metadata,
6039
+ :user_context_data)
4678
6040
  include Aws::Structure
4679
6041
  end
4680
6042
 
@@ -4731,6 +6093,82 @@ module Aws::CognitoIdentityProvider
4731
6093
  include Aws::Structure
4732
6094
  end
4733
6095
 
6096
+ # The SMS text message multi-factor authentication (MFA) configuration
6097
+ # type.
6098
+ #
6099
+ # @note When making an API call, you may pass SmsMfaConfigType
6100
+ # data as a hash:
6101
+ #
6102
+ # {
6103
+ # sms_authentication_message: "SmsVerificationMessageType",
6104
+ # sms_configuration: {
6105
+ # sns_caller_arn: "ArnType", # required
6106
+ # external_id: "StringType",
6107
+ # },
6108
+ # }
6109
+ #
6110
+ # @!attribute [rw] sms_authentication_message
6111
+ # The SMS authentication message.
6112
+ # @return [String]
6113
+ #
6114
+ # @!attribute [rw] sms_configuration
6115
+ # The SMS configuration.
6116
+ # @return [Types::SmsConfigurationType]
6117
+ #
6118
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/SmsMfaConfigType AWS API Documentation
6119
+ #
6120
+ class SmsMfaConfigType < Struct.new(
6121
+ :sms_authentication_message,
6122
+ :sms_configuration)
6123
+ include Aws::Structure
6124
+ end
6125
+
6126
+ # The type used for enabling software token MFA at the user pool level.
6127
+ #
6128
+ # @note When making an API call, you may pass SoftwareTokenMfaConfigType
6129
+ # data as a hash:
6130
+ #
6131
+ # {
6132
+ # enabled: false,
6133
+ # }
6134
+ #
6135
+ # @!attribute [rw] enabled
6136
+ # Specifies whether software token MFA is enabled.
6137
+ # @return [Boolean]
6138
+ #
6139
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/SoftwareTokenMfaConfigType AWS API Documentation
6140
+ #
6141
+ class SoftwareTokenMfaConfigType < Struct.new(
6142
+ :enabled)
6143
+ include Aws::Structure
6144
+ end
6145
+
6146
+ # The type used for enabling software token MFA at the user level.
6147
+ #
6148
+ # @note When making an API call, you may pass SoftwareTokenMfaSettingsType
6149
+ # data as a hash:
6150
+ #
6151
+ # {
6152
+ # enabled: false,
6153
+ # preferred_mfa: false,
6154
+ # }
6155
+ #
6156
+ # @!attribute [rw] enabled
6157
+ # Specifies whether software token MFA is enabled.
6158
+ # @return [Boolean]
6159
+ #
6160
+ # @!attribute [rw] preferred_mfa
6161
+ # The preferred MFA method.
6162
+ # @return [Boolean]
6163
+ #
6164
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/SoftwareTokenMfaSettingsType AWS API Documentation
6165
+ #
6166
+ class SoftwareTokenMfaSettingsType < Struct.new(
6167
+ :enabled,
6168
+ :preferred_mfa)
6169
+ include Aws::Structure
6170
+ end
6171
+
4734
6172
  # Represents the request to start the user import job.
4735
6173
  #
4736
6174
  # @note When making an API call, you may pass StartUserImportJobRequest
@@ -4813,8 +6251,7 @@ module Aws::CognitoIdentityProvider
4813
6251
  include Aws::Structure
4814
6252
  end
4815
6253
 
4816
- # The type of constraints associated with an attribute of the string
4817
- # type.
6254
+ # The constraints associated with a string attribute.
4818
6255
  #
4819
6256
  # @note When making an API call, you may pass StringAttributeConstraintsType
4820
6257
  # data as a hash:
@@ -4825,11 +6262,11 @@ module Aws::CognitoIdentityProvider
4825
6262
  # }
4826
6263
  #
4827
6264
  # @!attribute [rw] min_length
4828
- # The minimum length of an attribute value of the string type.
6265
+ # The minimum length.
4829
6266
  # @return [String]
4830
6267
  #
4831
6268
  # @!attribute [rw] max_length
4832
- # The maximum length of an attribute value of the string type.
6269
+ # The maximum length.
4833
6270
  # @return [String]
4834
6271
  #
4835
6272
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/StringAttributeConstraintsType AWS API Documentation
@@ -4884,6 +6321,52 @@ module Aws::CognitoIdentityProvider
4884
6321
  include Aws::Structure
4885
6322
  end
4886
6323
 
6324
+ # @note When making an API call, you may pass UpdateAuthEventFeedbackRequest
6325
+ # data as a hash:
6326
+ #
6327
+ # {
6328
+ # user_pool_id: "UserPoolIdType", # required
6329
+ # username: "UsernameType", # required
6330
+ # event_id: "EventIdType", # required
6331
+ # feedback_token: "TokenModelType", # required
6332
+ # feedback_value: "Valid", # required, accepts Valid, Invalid
6333
+ # }
6334
+ #
6335
+ # @!attribute [rw] user_pool_id
6336
+ # The user pool ID.
6337
+ # @return [String]
6338
+ #
6339
+ # @!attribute [rw] username
6340
+ # The user pool username.
6341
+ # @return [String]
6342
+ #
6343
+ # @!attribute [rw] event_id
6344
+ # The event ID.
6345
+ # @return [String]
6346
+ #
6347
+ # @!attribute [rw] feedback_token
6348
+ # The feedback token.
6349
+ # @return [String]
6350
+ #
6351
+ # @!attribute [rw] feedback_value
6352
+ # The authentication event feedback value.
6353
+ # @return [String]
6354
+ #
6355
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/UpdateAuthEventFeedbackRequest AWS API Documentation
6356
+ #
6357
+ class UpdateAuthEventFeedbackRequest < Struct.new(
6358
+ :user_pool_id,
6359
+ :username,
6360
+ :event_id,
6361
+ :feedback_token,
6362
+ :feedback_value)
6363
+ include Aws::Structure
6364
+ end
6365
+
6366
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/UpdateAuthEventFeedbackResponse AWS API Documentation
6367
+ #
6368
+ class UpdateAuthEventFeedbackResponse < Aws::EmptyStructure; end
6369
+
4887
6370
  # Represents the request to update the device status.
4888
6371
  #
4889
6372
  # @note When making an API call, you may pass UpdateDeviceStatusRequest
@@ -4952,7 +6435,7 @@ module Aws::CognitoIdentityProvider
4952
6435
  #
4953
6436
  # @!attribute [rw] precedence
4954
6437
  # The new precedence value for the group. For more information about
4955
- # this parameter, see [CreateGroup](API_CreateGroup.html).
6438
+ # this parameter, see .
4956
6439
  # @return [Integer]
4957
6440
  #
4958
6441
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/UpdateGroupRequest AWS API Documentation
@@ -5156,6 +6639,12 @@ module Aws::CognitoIdentityProvider
5156
6639
  # allowed_o_auth_flows: ["code"], # accepts code, implicit, client_credentials
5157
6640
  # allowed_o_auth_scopes: ["ScopeType"],
5158
6641
  # allowed_o_auth_flows_user_pool_client: false,
6642
+ # analytics_configuration: {
6643
+ # application_id: "HexStringType", # required
6644
+ # role_arn: "ArnType", # required
6645
+ # external_id: "StringType", # required
6646
+ # user_data_shared: false,
6647
+ # },
5159
6648
  # }
5160
6649
  #
5161
6650
  # @!attribute [rw] user_pool_id
@@ -5224,6 +6713,11 @@ module Aws::CognitoIdentityProvider
5224
6713
  # when interacting with Cognito user pools.
5225
6714
  # @return [Boolean]
5226
6715
  #
6716
+ # @!attribute [rw] analytics_configuration
6717
+ # The Amazon Pinpoint analytics configuration for collecting metrics
6718
+ # for this user pool.
6719
+ # @return [Types::AnalyticsConfigurationType]
6720
+ #
5227
6721
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/UpdateUserPoolClientRequest AWS API Documentation
5228
6722
  #
5229
6723
  class UpdateUserPoolClientRequest < Struct.new(
@@ -5240,7 +6734,8 @@ module Aws::CognitoIdentityProvider
5240
6734
  :default_redirect_uri,
5241
6735
  :allowed_o_auth_flows,
5242
6736
  :allowed_o_auth_scopes,
5243
- :allowed_o_auth_flows_user_pool_client)
6737
+ :allowed_o_auth_flows_user_pool_client,
6738
+ :analytics_configuration)
5244
6739
  include Aws::Structure
5245
6740
  end
5246
6741
 
@@ -5284,6 +6779,7 @@ module Aws::CognitoIdentityProvider
5284
6779
  # define_auth_challenge: "ArnType",
5285
6780
  # create_auth_challenge: "ArnType",
5286
6781
  # verify_auth_challenge_response: "ArnType",
6782
+ # pre_token_generation: "ArnType",
5287
6783
  # },
5288
6784
  # auto_verified_attributes: ["phone_number"], # accepts phone_number, email
5289
6785
  # sms_verification_message: "SmsVerificationMessageType",
@@ -5323,6 +6819,9 @@ module Aws::CognitoIdentityProvider
5323
6819
  # email_subject: "EmailVerificationSubjectType",
5324
6820
  # },
5325
6821
  # },
6822
+ # user_pool_add_ons: {
6823
+ # advanced_security_mode: "OFF", # required, accepts OFF, AUDIT, ENFORCED
6824
+ # },
5326
6825
  # }
5327
6826
  #
5328
6827
  # @!attribute [rw] user_pool_id
@@ -5401,6 +6900,11 @@ module Aws::CognitoIdentityProvider
5401
6900
  # The configuration for `AdminCreateUser` requests.
5402
6901
  # @return [Types::AdminCreateUserConfigType]
5403
6902
  #
6903
+ # @!attribute [rw] user_pool_add_ons
6904
+ # Used to enable advanced security risk detection. Set the key
6905
+ # `AdvancedSecurityMode` to the value "AUDIT".
6906
+ # @return [Types::UserPoolAddOnsType]
6907
+ #
5404
6908
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/UpdateUserPoolRequest AWS API Documentation
5405
6909
  #
5406
6910
  class UpdateUserPoolRequest < Struct.new(
@@ -5418,7 +6922,8 @@ module Aws::CognitoIdentityProvider
5418
6922
  :email_configuration,
5419
6923
  :sms_configuration,
5420
6924
  :user_pool_tags,
5421
- :admin_create_user_config)
6925
+ :admin_create_user_config,
6926
+ :user_pool_add_ons)
5422
6927
  include Aws::Structure
5423
6928
  end
5424
6929
 
@@ -5429,6 +6934,30 @@ module Aws::CognitoIdentityProvider
5429
6934
  #
5430
6935
  class UpdateUserPoolResponse < Aws::EmptyStructure; end
5431
6936
 
6937
+ # Contextual data such as the user's device fingerprint, IP address, or
6938
+ # location used for evaluating the risk of an unexpected event by Amazon
6939
+ # Cognito advanced security.
6940
+ #
6941
+ # @note When making an API call, you may pass UserContextDataType
6942
+ # data as a hash:
6943
+ #
6944
+ # {
6945
+ # encoded_data: "StringType",
6946
+ # }
6947
+ #
6948
+ # @!attribute [rw] encoded_data
6949
+ # Contextual data such as the user's device fingerprint, IP address,
6950
+ # or location used for evaluating the risk of an unexpected event by
6951
+ # Amazon Cognito advanced security.
6952
+ # @return [String]
6953
+ #
6954
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/UserContextDataType AWS API Documentation
6955
+ #
6956
+ class UserContextDataType < Struct.new(
6957
+ :encoded_data)
6958
+ include Aws::Structure
6959
+ end
6960
+
5432
6961
  # The user import job type.
5433
6962
  #
5434
6963
  # @!attribute [rw] job_name
@@ -5526,6 +7055,26 @@ module Aws::CognitoIdentityProvider
5526
7055
  include Aws::Structure
5527
7056
  end
5528
7057
 
7058
+ # The user pool add-ons type.
7059
+ #
7060
+ # @note When making an API call, you may pass UserPoolAddOnsType
7061
+ # data as a hash:
7062
+ #
7063
+ # {
7064
+ # advanced_security_mode: "OFF", # required, accepts OFF, AUDIT, ENFORCED
7065
+ # }
7066
+ #
7067
+ # @!attribute [rw] advanced_security_mode
7068
+ # The advanced security mode.
7069
+ # @return [String]
7070
+ #
7071
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/UserPoolAddOnsType AWS API Documentation
7072
+ #
7073
+ class UserPoolAddOnsType < Struct.new(
7074
+ :advanced_security_mode)
7075
+ include Aws::Structure
7076
+ end
7077
+
5529
7078
  # The description of the user pool client.
5530
7079
  #
5531
7080
  # @!attribute [rw] client_id
@@ -5629,6 +7178,11 @@ module Aws::CognitoIdentityProvider
5629
7178
  # when interacting with Cognito user pools.
5630
7179
  # @return [Boolean]
5631
7180
  #
7181
+ # @!attribute [rw] analytics_configuration
7182
+ # The Amazon Pinpoint analytics configuration for the user pool
7183
+ # client.
7184
+ # @return [Types::AnalyticsConfigurationType]
7185
+ #
5632
7186
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/UserPoolClientType AWS API Documentation
5633
7187
  #
5634
7188
  class UserPoolClientType < Struct.new(
@@ -5648,7 +7202,8 @@ module Aws::CognitoIdentityProvider
5648
7202
  :default_redirect_uri,
5649
7203
  :allowed_o_auth_flows,
5650
7204
  :allowed_o_auth_scopes,
5651
- :allowed_o_auth_flows_user_pool_client)
7205
+ :allowed_o_auth_flows_user_pool_client,
7206
+ :analytics_configuration)
5652
7207
  include Aws::Structure
5653
7208
  end
5654
7209
 
@@ -5690,7 +7245,7 @@ module Aws::CognitoIdentityProvider
5690
7245
  include Aws::Structure
5691
7246
  end
5692
7247
 
5693
- # The type of policy in a user pool.
7248
+ # The policy associated with a user pool.
5694
7249
  #
5695
7250
  # @note When making an API call, you may pass UserPoolPolicyType
5696
7251
  # data as a hash:
@@ -5706,7 +7261,7 @@ module Aws::CognitoIdentityProvider
5706
7261
  # }
5707
7262
  #
5708
7263
  # @!attribute [rw] password_policy
5709
- # A container for information about the user pool password policy.
7264
+ # The password policy.
5710
7265
  # @return [Types::PasswordPolicyType]
5711
7266
  #
5712
7267
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/UserPoolPolicyType AWS API Documentation
@@ -5716,7 +7271,7 @@ module Aws::CognitoIdentityProvider
5716
7271
  include Aws::Structure
5717
7272
  end
5718
7273
 
5719
- # A container for information about the user pool type.
7274
+ # A container for information about the user pool.
5720
7275
  #
5721
7276
  # @!attribute [rw] id
5722
7277
  # The ID of the user pool.
@@ -5727,11 +7282,11 @@ module Aws::CognitoIdentityProvider
5727
7282
  # @return [String]
5728
7283
  #
5729
7284
  # @!attribute [rw] policies
5730
- # A container for the policies associated with a user pool.
7285
+ # The policies associated with the user pool.
5731
7286
  # @return [Types::UserPoolPolicyType]
5732
7287
  #
5733
7288
  # @!attribute [rw] lambda_config
5734
- # A container for the AWS Lambda triggers associated with a user pool.
7289
+ # The AWS Lambda triggers associated with tue user pool.
5735
7290
  # @return [Types::LambdaConfigType]
5736
7291
  #
5737
7292
  # @!attribute [rw] status
@@ -5835,6 +7390,10 @@ module Aws::CognitoIdentityProvider
5835
7390
  # The configuration for `AdminCreateUser` requests.
5836
7391
  # @return [Types::AdminCreateUserConfigType]
5837
7392
  #
7393
+ # @!attribute [rw] user_pool_add_ons
7394
+ # The user pool add-ons.
7395
+ # @return [Types::UserPoolAddOnsType]
7396
+ #
5838
7397
  # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/UserPoolType AWS API Documentation
5839
7398
  #
5840
7399
  class UserPoolType < Struct.new(
@@ -5862,7 +7421,8 @@ module Aws::CognitoIdentityProvider
5862
7421
  :user_pool_tags,
5863
7422
  :sms_configuration_failure,
5864
7423
  :email_configuration_failure,
5865
- :admin_create_user_config)
7424
+ :admin_create_user_config,
7425
+ :user_pool_add_ons)
5866
7426
  include Aws::Structure
5867
7427
  end
5868
7428
 
@@ -5971,6 +7531,60 @@ module Aws::CognitoIdentityProvider
5971
7531
  include Aws::Structure
5972
7532
  end
5973
7533
 
7534
+ # @note When making an API call, you may pass VerifySoftwareTokenRequest
7535
+ # data as a hash:
7536
+ #
7537
+ # {
7538
+ # access_token: "TokenModelType",
7539
+ # session: "SessionType",
7540
+ # user_code: "SoftwareTokenMFAUserCodeType", # required
7541
+ # friendly_device_name: "StringType",
7542
+ # }
7543
+ #
7544
+ # @!attribute [rw] access_token
7545
+ # The access token.
7546
+ # @return [String]
7547
+ #
7548
+ # @!attribute [rw] session
7549
+ # The session which should be passed both ways in challenge-response
7550
+ # calls to the service.
7551
+ # @return [String]
7552
+ #
7553
+ # @!attribute [rw] user_code
7554
+ # The one time password computed using the secret code returned by
7555
+ # @return [String]
7556
+ #
7557
+ # @!attribute [rw] friendly_device_name
7558
+ # The friendly device name.
7559
+ # @return [String]
7560
+ #
7561
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/VerifySoftwareTokenRequest AWS API Documentation
7562
+ #
7563
+ class VerifySoftwareTokenRequest < Struct.new(
7564
+ :access_token,
7565
+ :session,
7566
+ :user_code,
7567
+ :friendly_device_name)
7568
+ include Aws::Structure
7569
+ end
7570
+
7571
+ # @!attribute [rw] status
7572
+ # The status of the verify software token.
7573
+ # @return [String]
7574
+ #
7575
+ # @!attribute [rw] session
7576
+ # The session which should be passed both ways in challenge-response
7577
+ # calls to the service.
7578
+ # @return [String]
7579
+ #
7580
+ # @see http://docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/VerifySoftwareTokenResponse AWS API Documentation
7581
+ #
7582
+ class VerifySoftwareTokenResponse < Struct.new(
7583
+ :status,
7584
+ :session)
7585
+ include Aws::Structure
7586
+ end
7587
+
5974
7588
  # Represents the request to verify user attributes.
5975
7589
  #
5976
7590
  # @note When making an API call, you may pass VerifyUserAttributeRequest