/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Initiates the authentication request.See Also:
AWS
* API Reference
The authentication flow for this call to run. The API action will depend on * this value. For example:
REFRESH_TOKEN_AUTH
takes
* in a valid refresh token and returns new tokens.
* USER_SRP_AUTH
takes in USERNAME
and SRP_A
* and returns the SRP variables to be used for next challenge execution.
USER_PASSWORD_AUTH
takes in USERNAME
and
* PASSWORD
and returns the next challenge or tokens.
Valid values include:
USER_SRP_AUTH
:
* Authentication flow for the Secure Remote Password (SRP) protocol.
REFRESH_TOKEN_AUTH
/REFRESH_TOKEN
:
* Authentication flow for refreshing the access token and ID token by supplying a
* valid refresh token.
CUSTOM_AUTH
: Custom
* authentication flow.
USER_PASSWORD_AUTH
: Non-SRP
* authentication flow; user name and password are passed directly. If a user
* migration Lambda trigger is set, this flow will invoke the user migration Lambda
* if it doesn't find the user name in the user pool.
* ADMIN_NO_SRP_AUTH
isn't a valid value.
The authentication flow for this call to run. The API action will depend on * this value. For example:
REFRESH_TOKEN_AUTH
takes
* in a valid refresh token and returns new tokens.
* USER_SRP_AUTH
takes in USERNAME
and SRP_A
* and returns the SRP variables to be used for next challenge execution.
USER_PASSWORD_AUTH
takes in USERNAME
and
* PASSWORD
and returns the next challenge or tokens.
Valid values include:
USER_SRP_AUTH
:
* Authentication flow for the Secure Remote Password (SRP) protocol.
REFRESH_TOKEN_AUTH
/REFRESH_TOKEN
:
* Authentication flow for refreshing the access token and ID token by supplying a
* valid refresh token.
CUSTOM_AUTH
: Custom
* authentication flow.
USER_PASSWORD_AUTH
: Non-SRP
* authentication flow; user name and password are passed directly. If a user
* migration Lambda trigger is set, this flow will invoke the user migration Lambda
* if it doesn't find the user name in the user pool.
* ADMIN_NO_SRP_AUTH
isn't a valid value.
The authentication flow for this call to run. The API action will depend on * this value. For example:
REFRESH_TOKEN_AUTH
takes
* in a valid refresh token and returns new tokens.
* USER_SRP_AUTH
takes in USERNAME
and SRP_A
* and returns the SRP variables to be used for next challenge execution.
USER_PASSWORD_AUTH
takes in USERNAME
and
* PASSWORD
and returns the next challenge or tokens.
Valid values include:
USER_SRP_AUTH
:
* Authentication flow for the Secure Remote Password (SRP) protocol.
REFRESH_TOKEN_AUTH
/REFRESH_TOKEN
:
* Authentication flow for refreshing the access token and ID token by supplying a
* valid refresh token.
CUSTOM_AUTH
: Custom
* authentication flow.
USER_PASSWORD_AUTH
: Non-SRP
* authentication flow; user name and password are passed directly. If a user
* migration Lambda trigger is set, this flow will invoke the user migration Lambda
* if it doesn't find the user name in the user pool.
* ADMIN_NO_SRP_AUTH
isn't a valid value.
The authentication flow for this call to run. The API action will depend on * this value. For example:
REFRESH_TOKEN_AUTH
takes
* in a valid refresh token and returns new tokens.
* USER_SRP_AUTH
takes in USERNAME
and SRP_A
* and returns the SRP variables to be used for next challenge execution.
USER_PASSWORD_AUTH
takes in USERNAME
and
* PASSWORD
and returns the next challenge or tokens.
Valid values include:
USER_SRP_AUTH
:
* Authentication flow for the Secure Remote Password (SRP) protocol.
REFRESH_TOKEN_AUTH
/REFRESH_TOKEN
:
* Authentication flow for refreshing the access token and ID token by supplying a
* valid refresh token.
CUSTOM_AUTH
: Custom
* authentication flow.
USER_PASSWORD_AUTH
: Non-SRP
* authentication flow; user name and password are passed directly. If a user
* migration Lambda trigger is set, this flow will invoke the user migration Lambda
* if it doesn't find the user name in the user pool.
* ADMIN_NO_SRP_AUTH
isn't a valid value.
The authentication flow for this call to run. The API action will depend on * this value. For example:
REFRESH_TOKEN_AUTH
takes
* in a valid refresh token and returns new tokens.
* USER_SRP_AUTH
takes in USERNAME
and SRP_A
* and returns the SRP variables to be used for next challenge execution.
USER_PASSWORD_AUTH
takes in USERNAME
and
* PASSWORD
and returns the next challenge or tokens.
Valid values include:
USER_SRP_AUTH
:
* Authentication flow for the Secure Remote Password (SRP) protocol.
REFRESH_TOKEN_AUTH
/REFRESH_TOKEN
:
* Authentication flow for refreshing the access token and ID token by supplying a
* valid refresh token.
CUSTOM_AUTH
: Custom
* authentication flow.
USER_PASSWORD_AUTH
: Non-SRP
* authentication flow; user name and password are passed directly. If a user
* migration Lambda trigger is set, this flow will invoke the user migration Lambda
* if it doesn't find the user name in the user pool.
* ADMIN_NO_SRP_AUTH
isn't a valid value.
The authentication flow for this call to run. The API action will depend on * this value. For example:
REFRESH_TOKEN_AUTH
takes
* in a valid refresh token and returns new tokens.
* USER_SRP_AUTH
takes in USERNAME
and SRP_A
* and returns the SRP variables to be used for next challenge execution.
USER_PASSWORD_AUTH
takes in USERNAME
and
* PASSWORD
and returns the next challenge or tokens.
Valid values include:
USER_SRP_AUTH
:
* Authentication flow for the Secure Remote Password (SRP) protocol.
REFRESH_TOKEN_AUTH
/REFRESH_TOKEN
:
* Authentication flow for refreshing the access token and ID token by supplying a
* valid refresh token.
CUSTOM_AUTH
: Custom
* authentication flow.
USER_PASSWORD_AUTH
: Non-SRP
* authentication flow; user name and password are passed directly. If a user
* migration Lambda trigger is set, this flow will invoke the user migration Lambda
* if it doesn't find the user name in the user pool.
* ADMIN_NO_SRP_AUTH
isn't a valid value.
The authentication parameters. These are inputs corresponding to the
* AuthFlow
that you're invoking. The required values depend on the
* value of AuthFlow
:
For USER_SRP_AUTH
:
* USERNAME
(required), SRP_A
(required),
* SECRET_HASH
(required if the app client is configured with a client
* secret), DEVICE_KEY
.
For
* REFRESH_TOKEN_AUTH/REFRESH_TOKEN
: REFRESH_TOKEN
* (required), SECRET_HASH
(required if the app client is configured
* with a client secret), DEVICE_KEY
.
For
* CUSTOM_AUTH
: USERNAME
(required),
* SECRET_HASH
(if app client is configured with client secret),
* DEVICE_KEY
. To start the authentication flow with password
* verification, include ChallengeName: SRP_A
and SRP_A: (The
* SRP_A Value)
.
The authentication parameters. These are inputs corresponding to the
* AuthFlow
that you're invoking. The required values depend on the
* value of AuthFlow
:
For USER_SRP_AUTH
:
* USERNAME
(required), SRP_A
(required),
* SECRET_HASH
(required if the app client is configured with a client
* secret), DEVICE_KEY
.
For
* REFRESH_TOKEN_AUTH/REFRESH_TOKEN
: REFRESH_TOKEN
* (required), SECRET_HASH
(required if the app client is configured
* with a client secret), DEVICE_KEY
.
For
* CUSTOM_AUTH
: USERNAME
(required),
* SECRET_HASH
(if app client is configured with client secret),
* DEVICE_KEY
. To start the authentication flow with password
* verification, include ChallengeName: SRP_A
and SRP_A: (The
* SRP_A Value)
.
The authentication parameters. These are inputs corresponding to the
* AuthFlow
that you're invoking. The required values depend on the
* value of AuthFlow
:
For USER_SRP_AUTH
:
* USERNAME
(required), SRP_A
(required),
* SECRET_HASH
(required if the app client is configured with a client
* secret), DEVICE_KEY
.
For
* REFRESH_TOKEN_AUTH/REFRESH_TOKEN
: REFRESH_TOKEN
* (required), SECRET_HASH
(required if the app client is configured
* with a client secret), DEVICE_KEY
.
For
* CUSTOM_AUTH
: USERNAME
(required),
* SECRET_HASH
(if app client is configured with client secret),
* DEVICE_KEY
. To start the authentication flow with password
* verification, include ChallengeName: SRP_A
and SRP_A: (The
* SRP_A Value)
.
The authentication parameters. These are inputs corresponding to the
* AuthFlow
that you're invoking. The required values depend on the
* value of AuthFlow
:
For USER_SRP_AUTH
:
* USERNAME
(required), SRP_A
(required),
* SECRET_HASH
(required if the app client is configured with a client
* secret), DEVICE_KEY
.
For
* REFRESH_TOKEN_AUTH/REFRESH_TOKEN
: REFRESH_TOKEN
* (required), SECRET_HASH
(required if the app client is configured
* with a client secret), DEVICE_KEY
.
For
* CUSTOM_AUTH
: USERNAME
(required),
* SECRET_HASH
(if app client is configured with client secret),
* DEVICE_KEY
. To start the authentication flow with password
* verification, include ChallengeName: SRP_A
and SRP_A: (The
* SRP_A Value)
.
The authentication parameters. These are inputs corresponding to the
* AuthFlow
that you're invoking. The required values depend on the
* value of AuthFlow
:
For USER_SRP_AUTH
:
* USERNAME
(required), SRP_A
(required),
* SECRET_HASH
(required if the app client is configured with a client
* secret), DEVICE_KEY
.
For
* REFRESH_TOKEN_AUTH/REFRESH_TOKEN
: REFRESH_TOKEN
* (required), SECRET_HASH
(required if the app client is configured
* with a client secret), DEVICE_KEY
.
For
* CUSTOM_AUTH
: USERNAME
(required),
* SECRET_HASH
(if app client is configured with client secret),
* DEVICE_KEY
. To start the authentication flow with password
* verification, include ChallengeName: SRP_A
and SRP_A: (The
* SRP_A Value)
.
The authentication parameters. These are inputs corresponding to the
* AuthFlow
that you're invoking. The required values depend on the
* value of AuthFlow
:
For USER_SRP_AUTH
:
* USERNAME
(required), SRP_A
(required),
* SECRET_HASH
(required if the app client is configured with a client
* secret), DEVICE_KEY
.
For
* REFRESH_TOKEN_AUTH/REFRESH_TOKEN
: REFRESH_TOKEN
* (required), SECRET_HASH
(required if the app client is configured
* with a client secret), DEVICE_KEY
.
For
* CUSTOM_AUTH
: USERNAME
(required),
* SECRET_HASH
(if app client is configured with client secret),
* DEVICE_KEY
. To start the authentication flow with password
* verification, include ChallengeName: SRP_A
and SRP_A: (The
* SRP_A Value)
.
The authentication parameters. These are inputs corresponding to the
* AuthFlow
that you're invoking. The required values depend on the
* value of AuthFlow
:
For USER_SRP_AUTH
:
* USERNAME
(required), SRP_A
(required),
* SECRET_HASH
(required if the app client is configured with a client
* secret), DEVICE_KEY
.
For
* REFRESH_TOKEN_AUTH/REFRESH_TOKEN
: REFRESH_TOKEN
* (required), SECRET_HASH
(required if the app client is configured
* with a client secret), DEVICE_KEY
.
For
* CUSTOM_AUTH
: USERNAME
(required),
* SECRET_HASH
(if app client is configured with client secret),
* DEVICE_KEY
. To start the authentication flow with password
* verification, include ChallengeName: SRP_A
and SRP_A: (The
* SRP_A Value)
.
The authentication parameters. These are inputs corresponding to the
* AuthFlow
that you're invoking. The required values depend on the
* value of AuthFlow
:
For USER_SRP_AUTH
:
* USERNAME
(required), SRP_A
(required),
* SECRET_HASH
(required if the app client is configured with a client
* secret), DEVICE_KEY
.
For
* REFRESH_TOKEN_AUTH/REFRESH_TOKEN
: REFRESH_TOKEN
* (required), SECRET_HASH
(required if the app client is configured
* with a client secret), DEVICE_KEY
.
For
* CUSTOM_AUTH
: USERNAME
(required),
* SECRET_HASH
(if app client is configured with client secret),
* DEVICE_KEY
. To start the authentication flow with password
* verification, include ChallengeName: SRP_A
and SRP_A: (The
* SRP_A Value)
.
The authentication parameters. These are inputs corresponding to the
* AuthFlow
that you're invoking. The required values depend on the
* value of AuthFlow
:
For USER_SRP_AUTH
:
* USERNAME
(required), SRP_A
(required),
* SECRET_HASH
(required if the app client is configured with a client
* secret), DEVICE_KEY
.
For
* REFRESH_TOKEN_AUTH/REFRESH_TOKEN
: REFRESH_TOKEN
* (required), SECRET_HASH
(required if the app client is configured
* with a client secret), DEVICE_KEY
.
For
* CUSTOM_AUTH
: USERNAME
(required),
* SECRET_HASH
(if app client is configured with client secret),
* DEVICE_KEY
. To start the authentication flow with password
* verification, include ChallengeName: SRP_A
and SRP_A: (The
* SRP_A Value)
.
The authentication parameters. These are inputs corresponding to the
* AuthFlow
that you're invoking. The required values depend on the
* value of AuthFlow
:
For USER_SRP_AUTH
:
* USERNAME
(required), SRP_A
(required),
* SECRET_HASH
(required if the app client is configured with a client
* secret), DEVICE_KEY
.
For
* REFRESH_TOKEN_AUTH/REFRESH_TOKEN
: REFRESH_TOKEN
* (required), SECRET_HASH
(required if the app client is configured
* with a client secret), DEVICE_KEY
.
For
* CUSTOM_AUTH
: USERNAME
(required),
* SECRET_HASH
(if app client is configured with client secret),
* DEVICE_KEY
. To start the authentication flow with password
* verification, include ChallengeName: SRP_A
and SRP_A: (The
* SRP_A Value)
.
The authentication parameters. These are inputs corresponding to the
* AuthFlow
that you're invoking. The required values depend on the
* value of AuthFlow
:
For USER_SRP_AUTH
:
* USERNAME
(required), SRP_A
(required),
* SECRET_HASH
(required if the app client is configured with a client
* secret), DEVICE_KEY
.
For
* REFRESH_TOKEN_AUTH/REFRESH_TOKEN
: REFRESH_TOKEN
* (required), SECRET_HASH
(required if the app client is configured
* with a client secret), DEVICE_KEY
.
For
* CUSTOM_AUTH
: USERNAME
(required),
* SECRET_HASH
(if app client is configured with client secret),
* DEVICE_KEY
. To start the authentication flow with password
* verification, include ChallengeName: SRP_A
and SRP_A: (The
* SRP_A Value)
.
The authentication parameters. These are inputs corresponding to the
* AuthFlow
that you're invoking. The required values depend on the
* value of AuthFlow
:
For USER_SRP_AUTH
:
* USERNAME
(required), SRP_A
(required),
* SECRET_HASH
(required if the app client is configured with a client
* secret), DEVICE_KEY
.
For
* REFRESH_TOKEN_AUTH/REFRESH_TOKEN
: REFRESH_TOKEN
* (required), SECRET_HASH
(required if the app client is configured
* with a client secret), DEVICE_KEY
.
For
* CUSTOM_AUTH
: USERNAME
(required),
* SECRET_HASH
(if app client is configured with client secret),
* DEVICE_KEY
. To start the authentication flow with password
* verification, include ChallengeName: SRP_A
and SRP_A: (The
* SRP_A Value)
.
The authentication parameters. These are inputs corresponding to the
* AuthFlow
that you're invoking. The required values depend on the
* value of AuthFlow
:
For USER_SRP_AUTH
:
* USERNAME
(required), SRP_A
(required),
* SECRET_HASH
(required if the app client is configured with a client
* secret), DEVICE_KEY
.
For
* REFRESH_TOKEN_AUTH/REFRESH_TOKEN
: REFRESH_TOKEN
* (required), SECRET_HASH
(required if the app client is configured
* with a client secret), DEVICE_KEY
.
For
* CUSTOM_AUTH
: USERNAME
(required),
* SECRET_HASH
(if app client is configured with client secret),
* DEVICE_KEY
. To start the authentication flow with password
* verification, include ChallengeName: SRP_A
and SRP_A: (The
* SRP_A Value)
.
A map of custom key-value pairs that you can provide as input for certain * custom workflows that this action triggers.
You create custom workflows * by assigning Lambda functions to user pool triggers. When you use the * InitiateAuth API action, Amazon Cognito invokes the Lambda functions that are * specified for various triggers. The ClientMetadata value is passed as input to * the functions for only the following triggers:
Pre signup
*Pre authentication
User migration
When Amazon Cognito invokes the functions for these triggers, it passes
* a JSON payload, which the function receives as input. This payload contains a
* validationData
attribute, which provides the data that you assigned
* to the ClientMetadata parameter in your InitiateAuth request. In your function
* code in Lambda, you can process the validationData
value to enhance
* your workflow for your specific needs.
When you use the InitiateAuth API * action, Amazon Cognito also invokes the functions for the following triggers, * but it doesn't provide the ClientMetadata value as input:
Post * authentication
Custom message
Pre token * generation
Create auth challenge
Define auth * challenge
Verify auth challenge
For more * information, see * Customizing user pool Workflows with Lambda Triggers in the Amazon * Cognito Developer Guide.
When you use the ClientMetadata * parameter, remember that Amazon Cognito won't do the following:
Store the ClientMetadata value. This data is available only to Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration doesn't include triggers, the ClientMetadata parameter * serves no purpose.
Validate the ClientMetadata value.
*Encrypt the ClientMetadata value. Don't use Amazon Cognito to * provide sensitive information.
A map of custom key-value pairs that you can provide as input for certain * custom workflows that this action triggers.
You create custom workflows * by assigning Lambda functions to user pool triggers. When you use the * InitiateAuth API action, Amazon Cognito invokes the Lambda functions that are * specified for various triggers. The ClientMetadata value is passed as input to * the functions for only the following triggers:
Pre signup
*Pre authentication
User migration
When Amazon Cognito invokes the functions for these triggers, it passes
* a JSON payload, which the function receives as input. This payload contains a
* validationData
attribute, which provides the data that you assigned
* to the ClientMetadata parameter in your InitiateAuth request. In your function
* code in Lambda, you can process the validationData
value to enhance
* your workflow for your specific needs.
When you use the InitiateAuth API * action, Amazon Cognito also invokes the functions for the following triggers, * but it doesn't provide the ClientMetadata value as input:
Post * authentication
Custom message
Pre token * generation
Create auth challenge
Define auth * challenge
Verify auth challenge
For more * information, see * Customizing user pool Workflows with Lambda Triggers in the Amazon * Cognito Developer Guide.
When you use the ClientMetadata * parameter, remember that Amazon Cognito won't do the following:
Store the ClientMetadata value. This data is available only to Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration doesn't include triggers, the ClientMetadata parameter * serves no purpose.
Validate the ClientMetadata value.
*Encrypt the ClientMetadata value. Don't use Amazon Cognito to * provide sensitive information.
A map of custom key-value pairs that you can provide as input for certain * custom workflows that this action triggers.
You create custom workflows * by assigning Lambda functions to user pool triggers. When you use the * InitiateAuth API action, Amazon Cognito invokes the Lambda functions that are * specified for various triggers. The ClientMetadata value is passed as input to * the functions for only the following triggers:
Pre signup
*Pre authentication
User migration
When Amazon Cognito invokes the functions for these triggers, it passes
* a JSON payload, which the function receives as input. This payload contains a
* validationData
attribute, which provides the data that you assigned
* to the ClientMetadata parameter in your InitiateAuth request. In your function
* code in Lambda, you can process the validationData
value to enhance
* your workflow for your specific needs.
When you use the InitiateAuth API * action, Amazon Cognito also invokes the functions for the following triggers, * but it doesn't provide the ClientMetadata value as input:
Post * authentication
Custom message
Pre token * generation
Create auth challenge
Define auth * challenge
Verify auth challenge
For more * information, see * Customizing user pool Workflows with Lambda Triggers in the Amazon * Cognito Developer Guide.
When you use the ClientMetadata * parameter, remember that Amazon Cognito won't do the following:
Store the ClientMetadata value. This data is available only to Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration doesn't include triggers, the ClientMetadata parameter * serves no purpose.
Validate the ClientMetadata value.
*Encrypt the ClientMetadata value. Don't use Amazon Cognito to * provide sensitive information.
A map of custom key-value pairs that you can provide as input for certain * custom workflows that this action triggers.
You create custom workflows * by assigning Lambda functions to user pool triggers. When you use the * InitiateAuth API action, Amazon Cognito invokes the Lambda functions that are * specified for various triggers. The ClientMetadata value is passed as input to * the functions for only the following triggers:
Pre signup
*Pre authentication
User migration
When Amazon Cognito invokes the functions for these triggers, it passes
* a JSON payload, which the function receives as input. This payload contains a
* validationData
attribute, which provides the data that you assigned
* to the ClientMetadata parameter in your InitiateAuth request. In your function
* code in Lambda, you can process the validationData
value to enhance
* your workflow for your specific needs.
When you use the InitiateAuth API * action, Amazon Cognito also invokes the functions for the following triggers, * but it doesn't provide the ClientMetadata value as input:
Post * authentication
Custom message
Pre token * generation
Create auth challenge
Define auth * challenge
Verify auth challenge
For more * information, see * Customizing user pool Workflows with Lambda Triggers in the Amazon * Cognito Developer Guide.
When you use the ClientMetadata * parameter, remember that Amazon Cognito won't do the following:
Store the ClientMetadata value. This data is available only to Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration doesn't include triggers, the ClientMetadata parameter * serves no purpose.
Validate the ClientMetadata value.
*Encrypt the ClientMetadata value. Don't use Amazon Cognito to * provide sensitive information.
A map of custom key-value pairs that you can provide as input for certain * custom workflows that this action triggers.
You create custom workflows * by assigning Lambda functions to user pool triggers. When you use the * InitiateAuth API action, Amazon Cognito invokes the Lambda functions that are * specified for various triggers. The ClientMetadata value is passed as input to * the functions for only the following triggers:
Pre signup
*Pre authentication
User migration
When Amazon Cognito invokes the functions for these triggers, it passes
* a JSON payload, which the function receives as input. This payload contains a
* validationData
attribute, which provides the data that you assigned
* to the ClientMetadata parameter in your InitiateAuth request. In your function
* code in Lambda, you can process the validationData
value to enhance
* your workflow for your specific needs.
When you use the InitiateAuth API * action, Amazon Cognito also invokes the functions for the following triggers, * but it doesn't provide the ClientMetadata value as input:
Post * authentication
Custom message
Pre token * generation
Create auth challenge
Define auth * challenge
Verify auth challenge
For more * information, see * Customizing user pool Workflows with Lambda Triggers in the Amazon * Cognito Developer Guide.
When you use the ClientMetadata * parameter, remember that Amazon Cognito won't do the following:
Store the ClientMetadata value. This data is available only to Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration doesn't include triggers, the ClientMetadata parameter * serves no purpose.
Validate the ClientMetadata value.
*Encrypt the ClientMetadata value. Don't use Amazon Cognito to * provide sensitive information.
A map of custom key-value pairs that you can provide as input for certain * custom workflows that this action triggers.
You create custom workflows * by assigning Lambda functions to user pool triggers. When you use the * InitiateAuth API action, Amazon Cognito invokes the Lambda functions that are * specified for various triggers. The ClientMetadata value is passed as input to * the functions for only the following triggers:
Pre signup
*Pre authentication
User migration
When Amazon Cognito invokes the functions for these triggers, it passes
* a JSON payload, which the function receives as input. This payload contains a
* validationData
attribute, which provides the data that you assigned
* to the ClientMetadata parameter in your InitiateAuth request. In your function
* code in Lambda, you can process the validationData
value to enhance
* your workflow for your specific needs.
When you use the InitiateAuth API * action, Amazon Cognito also invokes the functions for the following triggers, * but it doesn't provide the ClientMetadata value as input:
Post * authentication
Custom message
Pre token * generation
Create auth challenge
Define auth * challenge
Verify auth challenge
For more * information, see * Customizing user pool Workflows with Lambda Triggers in the Amazon * Cognito Developer Guide.
When you use the ClientMetadata * parameter, remember that Amazon Cognito won't do the following:
Store the ClientMetadata value. This data is available only to Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration doesn't include triggers, the ClientMetadata parameter * serves no purpose.
Validate the ClientMetadata value.
*Encrypt the ClientMetadata value. Don't use Amazon Cognito to * provide sensitive information.
A map of custom key-value pairs that you can provide as input for certain * custom workflows that this action triggers.
You create custom workflows * by assigning Lambda functions to user pool triggers. When you use the * InitiateAuth API action, Amazon Cognito invokes the Lambda functions that are * specified for various triggers. The ClientMetadata value is passed as input to * the functions for only the following triggers:
Pre signup
*Pre authentication
User migration
When Amazon Cognito invokes the functions for these triggers, it passes
* a JSON payload, which the function receives as input. This payload contains a
* validationData
attribute, which provides the data that you assigned
* to the ClientMetadata parameter in your InitiateAuth request. In your function
* code in Lambda, you can process the validationData
value to enhance
* your workflow for your specific needs.
When you use the InitiateAuth API * action, Amazon Cognito also invokes the functions for the following triggers, * but it doesn't provide the ClientMetadata value as input:
Post * authentication
Custom message
Pre token * generation
Create auth challenge
Define auth * challenge
Verify auth challenge
For more * information, see * Customizing user pool Workflows with Lambda Triggers in the Amazon * Cognito Developer Guide.
When you use the ClientMetadata * parameter, remember that Amazon Cognito won't do the following:
Store the ClientMetadata value. This data is available only to Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration doesn't include triggers, the ClientMetadata parameter * serves no purpose.
Validate the ClientMetadata value.
*Encrypt the ClientMetadata value. Don't use Amazon Cognito to * provide sensitive information.
A map of custom key-value pairs that you can provide as input for certain * custom workflows that this action triggers.
You create custom workflows * by assigning Lambda functions to user pool triggers. When you use the * InitiateAuth API action, Amazon Cognito invokes the Lambda functions that are * specified for various triggers. The ClientMetadata value is passed as input to * the functions for only the following triggers:
Pre signup
*Pre authentication
User migration
When Amazon Cognito invokes the functions for these triggers, it passes
* a JSON payload, which the function receives as input. This payload contains a
* validationData
attribute, which provides the data that you assigned
* to the ClientMetadata parameter in your InitiateAuth request. In your function
* code in Lambda, you can process the validationData
value to enhance
* your workflow for your specific needs.
When you use the InitiateAuth API * action, Amazon Cognito also invokes the functions for the following triggers, * but it doesn't provide the ClientMetadata value as input:
Post * authentication
Custom message
Pre token * generation
Create auth challenge
Define auth * challenge
Verify auth challenge
For more * information, see * Customizing user pool Workflows with Lambda Triggers in the Amazon * Cognito Developer Guide.
When you use the ClientMetadata * parameter, remember that Amazon Cognito won't do the following:
Store the ClientMetadata value. This data is available only to Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration doesn't include triggers, the ClientMetadata parameter * serves no purpose.
Validate the ClientMetadata value.
*Encrypt the ClientMetadata value. Don't use Amazon Cognito to * provide sensitive information.
A map of custom key-value pairs that you can provide as input for certain * custom workflows that this action triggers.
You create custom workflows * by assigning Lambda functions to user pool triggers. When you use the * InitiateAuth API action, Amazon Cognito invokes the Lambda functions that are * specified for various triggers. The ClientMetadata value is passed as input to * the functions for only the following triggers:
Pre signup
*Pre authentication
User migration
When Amazon Cognito invokes the functions for these triggers, it passes
* a JSON payload, which the function receives as input. This payload contains a
* validationData
attribute, which provides the data that you assigned
* to the ClientMetadata parameter in your InitiateAuth request. In your function
* code in Lambda, you can process the validationData
value to enhance
* your workflow for your specific needs.
When you use the InitiateAuth API * action, Amazon Cognito also invokes the functions for the following triggers, * but it doesn't provide the ClientMetadata value as input:
Post * authentication
Custom message
Pre token * generation
Create auth challenge
Define auth * challenge
Verify auth challenge
For more * information, see * Customizing user pool Workflows with Lambda Triggers in the Amazon * Cognito Developer Guide.
When you use the ClientMetadata * parameter, remember that Amazon Cognito won't do the following:
Store the ClientMetadata value. This data is available only to Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration doesn't include triggers, the ClientMetadata parameter * serves no purpose.
Validate the ClientMetadata value.
*Encrypt the ClientMetadata value. Don't use Amazon Cognito to * provide sensitive information.
A map of custom key-value pairs that you can provide as input for certain * custom workflows that this action triggers.
You create custom workflows * by assigning Lambda functions to user pool triggers. When you use the * InitiateAuth API action, Amazon Cognito invokes the Lambda functions that are * specified for various triggers. The ClientMetadata value is passed as input to * the functions for only the following triggers:
Pre signup
*Pre authentication
User migration
When Amazon Cognito invokes the functions for these triggers, it passes
* a JSON payload, which the function receives as input. This payload contains a
* validationData
attribute, which provides the data that you assigned
* to the ClientMetadata parameter in your InitiateAuth request. In your function
* code in Lambda, you can process the validationData
value to enhance
* your workflow for your specific needs.
When you use the InitiateAuth API * action, Amazon Cognito also invokes the functions for the following triggers, * but it doesn't provide the ClientMetadata value as input:
Post * authentication
Custom message
Pre token * generation
Create auth challenge
Define auth * challenge
Verify auth challenge
For more * information, see * Customizing user pool Workflows with Lambda Triggers in the Amazon * Cognito Developer Guide.
When you use the ClientMetadata * parameter, remember that Amazon Cognito won't do the following:
Store the ClientMetadata value. This data is available only to Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration doesn't include triggers, the ClientMetadata parameter * serves no purpose.
Validate the ClientMetadata value.
*Encrypt the ClientMetadata value. Don't use Amazon Cognito to * provide sensitive information.
A map of custom key-value pairs that you can provide as input for certain * custom workflows that this action triggers.
You create custom workflows * by assigning Lambda functions to user pool triggers. When you use the * InitiateAuth API action, Amazon Cognito invokes the Lambda functions that are * specified for various triggers. The ClientMetadata value is passed as input to * the functions for only the following triggers:
Pre signup
*Pre authentication
User migration
When Amazon Cognito invokes the functions for these triggers, it passes
* a JSON payload, which the function receives as input. This payload contains a
* validationData
attribute, which provides the data that you assigned
* to the ClientMetadata parameter in your InitiateAuth request. In your function
* code in Lambda, you can process the validationData
value to enhance
* your workflow for your specific needs.
When you use the InitiateAuth API * action, Amazon Cognito also invokes the functions for the following triggers, * but it doesn't provide the ClientMetadata value as input:
Post * authentication
Custom message
Pre token * generation
Create auth challenge
Define auth * challenge
Verify auth challenge
For more * information, see * Customizing user pool Workflows with Lambda Triggers in the Amazon * Cognito Developer Guide.
When you use the ClientMetadata * parameter, remember that Amazon Cognito won't do the following:
Store the ClientMetadata value. This data is available only to Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration doesn't include triggers, the ClientMetadata parameter * serves no purpose.
Validate the ClientMetadata value.
*Encrypt the ClientMetadata value. Don't use Amazon Cognito to * provide sensitive information.
A map of custom key-value pairs that you can provide as input for certain * custom workflows that this action triggers.
You create custom workflows * by assigning Lambda functions to user pool triggers. When you use the * InitiateAuth API action, Amazon Cognito invokes the Lambda functions that are * specified for various triggers. The ClientMetadata value is passed as input to * the functions for only the following triggers:
Pre signup
*Pre authentication
User migration
When Amazon Cognito invokes the functions for these triggers, it passes
* a JSON payload, which the function receives as input. This payload contains a
* validationData
attribute, which provides the data that you assigned
* to the ClientMetadata parameter in your InitiateAuth request. In your function
* code in Lambda, you can process the validationData
value to enhance
* your workflow for your specific needs.
When you use the InitiateAuth API * action, Amazon Cognito also invokes the functions for the following triggers, * but it doesn't provide the ClientMetadata value as input:
Post * authentication
Custom message
Pre token * generation
Create auth challenge
Define auth * challenge
Verify auth challenge
For more * information, see * Customizing user pool Workflows with Lambda Triggers in the Amazon * Cognito Developer Guide.
When you use the ClientMetadata * parameter, remember that Amazon Cognito won't do the following:
Store the ClientMetadata value. This data is available only to Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration doesn't include triggers, the ClientMetadata parameter * serves no purpose.
Validate the ClientMetadata value.
*Encrypt the ClientMetadata value. Don't use Amazon Cognito to * provide sensitive information.
A map of custom key-value pairs that you can provide as input for certain * custom workflows that this action triggers.
You create custom workflows * by assigning Lambda functions to user pool triggers. When you use the * InitiateAuth API action, Amazon Cognito invokes the Lambda functions that are * specified for various triggers. The ClientMetadata value is passed as input to * the functions for only the following triggers:
Pre signup
*Pre authentication
User migration
When Amazon Cognito invokes the functions for these triggers, it passes
* a JSON payload, which the function receives as input. This payload contains a
* validationData
attribute, which provides the data that you assigned
* to the ClientMetadata parameter in your InitiateAuth request. In your function
* code in Lambda, you can process the validationData
value to enhance
* your workflow for your specific needs.
When you use the InitiateAuth API * action, Amazon Cognito also invokes the functions for the following triggers, * but it doesn't provide the ClientMetadata value as input:
Post * authentication
Custom message
Pre token * generation
Create auth challenge
Define auth * challenge
Verify auth challenge
For more * information, see * Customizing user pool Workflows with Lambda Triggers in the Amazon * Cognito Developer Guide.
When you use the ClientMetadata * parameter, remember that Amazon Cognito won't do the following:
Store the ClientMetadata value. This data is available only to Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration doesn't include triggers, the ClientMetadata parameter * serves no purpose.
Validate the ClientMetadata value.
*Encrypt the ClientMetadata value. Don't use Amazon Cognito to * provide sensitive information.
The app client ID.
*/ inline const Aws::String& GetClientId() const{ return m_clientId; } /** *The app client ID.
*/ inline bool ClientIdHasBeenSet() const { return m_clientIdHasBeenSet; } /** *The app client ID.
*/ inline void SetClientId(const Aws::String& value) { m_clientIdHasBeenSet = true; m_clientId = value; } /** *The app client ID.
*/ inline void SetClientId(Aws::String&& value) { m_clientIdHasBeenSet = true; m_clientId = std::move(value); } /** *The app client ID.
*/ inline void SetClientId(const char* value) { m_clientIdHasBeenSet = true; m_clientId.assign(value); } /** *The app client ID.
*/ inline InitiateAuthRequest& WithClientId(const Aws::String& value) { SetClientId(value); return *this;} /** *The app client ID.
*/ inline InitiateAuthRequest& WithClientId(Aws::String&& value) { SetClientId(std::move(value)); return *this;} /** *The app client ID.
*/ inline InitiateAuthRequest& WithClientId(const char* value) { SetClientId(value); return *this;} /** *The Amazon Pinpoint analytics metadata that contributes to your metrics for
* InitiateAuth
calls.
The Amazon Pinpoint analytics metadata that contributes to your metrics for
* InitiateAuth
calls.
The Amazon Pinpoint analytics metadata that contributes to your metrics for
* InitiateAuth
calls.
The Amazon Pinpoint analytics metadata that contributes to your metrics for
* InitiateAuth
calls.
The Amazon Pinpoint analytics metadata that contributes to your metrics for
* InitiateAuth
calls.
The Amazon Pinpoint analytics metadata that contributes to your metrics for
* InitiateAuth
calls.
Contextual data about your user session, such as the device fingerprint, IP * address, or location. Amazon Cognito advanced security evaluates the risk of an * authentication event based on the context that your app generates and passes to * Amazon Cognito when it makes API requests.
*/ inline const UserContextDataType& GetUserContextData() const{ return m_userContextData; } /** *Contextual data about your user session, such as the device fingerprint, IP * address, or location. Amazon Cognito advanced security evaluates the risk of an * authentication event based on the context that your app generates and passes to * Amazon Cognito when it makes API requests.
*/ inline bool UserContextDataHasBeenSet() const { return m_userContextDataHasBeenSet; } /** *Contextual data about your user session, such as the device fingerprint, IP * address, or location. Amazon Cognito advanced security evaluates the risk of an * authentication event based on the context that your app generates and passes to * Amazon Cognito when it makes API requests.
*/ inline void SetUserContextData(const UserContextDataType& value) { m_userContextDataHasBeenSet = true; m_userContextData = value; } /** *Contextual data about your user session, such as the device fingerprint, IP * address, or location. Amazon Cognito advanced security evaluates the risk of an * authentication event based on the context that your app generates and passes to * Amazon Cognito when it makes API requests.
*/ inline void SetUserContextData(UserContextDataType&& value) { m_userContextDataHasBeenSet = true; m_userContextData = std::move(value); } /** *Contextual data about your user session, such as the device fingerprint, IP * address, or location. Amazon Cognito advanced security evaluates the risk of an * authentication event based on the context that your app generates and passes to * Amazon Cognito when it makes API requests.
*/ inline InitiateAuthRequest& WithUserContextData(const UserContextDataType& value) { SetUserContextData(value); return *this;} /** *Contextual data about your user session, such as the device fingerprint, IP * address, or location. Amazon Cognito advanced security evaluates the risk of an * authentication event based on the context that your app generates and passes to * Amazon Cognito when it makes API requests.
*/ inline InitiateAuthRequest& WithUserContextData(UserContextDataType&& value) { SetUserContextData(std::move(value)); return *this;} private: AuthFlowType m_authFlow; bool m_authFlowHasBeenSet = false; Aws::Map