/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Initiates the authorization request, as an administrator.See
* Also:
AWS
* API Reference
The ID of the Amazon Cognito user pool.
*/ inline const Aws::String& GetUserPoolId() const{ return m_userPoolId; } /** *The ID of the Amazon Cognito user pool.
*/ inline bool UserPoolIdHasBeenSet() const { return m_userPoolIdHasBeenSet; } /** *The ID of the Amazon Cognito user pool.
*/ inline void SetUserPoolId(const Aws::String& value) { m_userPoolIdHasBeenSet = true; m_userPoolId = value; } /** *The ID of the Amazon Cognito user pool.
*/ inline void SetUserPoolId(Aws::String&& value) { m_userPoolIdHasBeenSet = true; m_userPoolId = std::move(value); } /** *The ID of the Amazon Cognito user pool.
*/ inline void SetUserPoolId(const char* value) { m_userPoolIdHasBeenSet = true; m_userPoolId.assign(value); } /** *The ID of the Amazon Cognito user pool.
*/ inline AdminInitiateAuthRequest& WithUserPoolId(const Aws::String& value) { SetUserPoolId(value); return *this;} /** *The ID of the Amazon Cognito user pool.
*/ inline AdminInitiateAuthRequest& WithUserPoolId(Aws::String&& value) { SetUserPoolId(std::move(value)); return *this;} /** *The ID of the Amazon Cognito user pool.
*/ inline AdminInitiateAuthRequest& WithUserPoolId(const char* value) { SetUserPoolId(value); return *this;} /** *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 AdminInitiateAuthRequest& WithClientId(const Aws::String& value) { SetClientId(value); return *this;} /** *The app client ID.
*/ inline AdminInitiateAuthRequest& WithClientId(Aws::String&& value) { SetClientId(std::move(value)); return *this;} /** *The app client ID.
*/ inline AdminInitiateAuthRequest& WithClientId(const char* value) { SetClientId(value); return *this;} /** *The authentication flow for this call to execute. The API action will depend * on this value. For example:
REFRESH_TOKEN_AUTH
* will take in a valid refresh token and return new tokens.
* USER_SRP_AUTH will take in USERNAME and
* SRP_A and return the SRP variables to be used for next challenge
* execution.
USER_PASSWORD_AUTH will take in
* USERNAME and PASSWORD and return 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.
ADMIN_NO_SRP_AUTH: Non-SRP authentication
* flow; you can pass in the USERNAME and PASSWORD directly if the flow is enabled
* for calling the app client.
USER_PASSWORD_AUTH:
* Non-SRP authentication flow; USERNAME and PASSWORD are passed directly. If a
* user migration Lambda trigger is set, this flow will invoke the user migration
* Lambda if the USERNAME is not found in the user pool.
* ADMIN_USER_PASSWORD_AUTH: Admin-based user password authentication.
* This replaces the ADMIN_NO_SRP_AUTH authentication flow. In this
* flow, Cognito receives the password in the request instead of using the SRP
* process to verify passwords.
The authentication flow for this call to execute. The API action will depend * on this value. For example:
REFRESH_TOKEN_AUTH
* will take in a valid refresh token and return new tokens.
* USER_SRP_AUTH will take in USERNAME and
* SRP_A and return the SRP variables to be used for next challenge
* execution.
USER_PASSWORD_AUTH will take in
* USERNAME and PASSWORD and return 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.
ADMIN_NO_SRP_AUTH: Non-SRP authentication
* flow; you can pass in the USERNAME and PASSWORD directly if the flow is enabled
* for calling the app client.
USER_PASSWORD_AUTH:
* Non-SRP authentication flow; USERNAME and PASSWORD are passed directly. If a
* user migration Lambda trigger is set, this flow will invoke the user migration
* Lambda if the USERNAME is not found in the user pool.
* ADMIN_USER_PASSWORD_AUTH: Admin-based user password authentication.
* This replaces the ADMIN_NO_SRP_AUTH authentication flow. In this
* flow, Cognito receives the password in the request instead of using the SRP
* process to verify passwords.
The authentication flow for this call to execute. The API action will depend * on this value. For example:
REFRESH_TOKEN_AUTH
* will take in a valid refresh token and return new tokens.
* USER_SRP_AUTH will take in USERNAME and
* SRP_A and return the SRP variables to be used for next challenge
* execution.
USER_PASSWORD_AUTH will take in
* USERNAME and PASSWORD and return 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.
ADMIN_NO_SRP_AUTH: Non-SRP authentication
* flow; you can pass in the USERNAME and PASSWORD directly if the flow is enabled
* for calling the app client.
USER_PASSWORD_AUTH:
* Non-SRP authentication flow; USERNAME and PASSWORD are passed directly. If a
* user migration Lambda trigger is set, this flow will invoke the user migration
* Lambda if the USERNAME is not found in the user pool.
* ADMIN_USER_PASSWORD_AUTH: Admin-based user password authentication.
* This replaces the ADMIN_NO_SRP_AUTH authentication flow. In this
* flow, Cognito receives the password in the request instead of using the SRP
* process to verify passwords.
The authentication flow for this call to execute. The API action will depend * on this value. For example:
REFRESH_TOKEN_AUTH
* will take in a valid refresh token and return new tokens.
* USER_SRP_AUTH will take in USERNAME and
* SRP_A and return the SRP variables to be used for next challenge
* execution.
USER_PASSWORD_AUTH will take in
* USERNAME and PASSWORD and return 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.
ADMIN_NO_SRP_AUTH: Non-SRP authentication
* flow; you can pass in the USERNAME and PASSWORD directly if the flow is enabled
* for calling the app client.
USER_PASSWORD_AUTH:
* Non-SRP authentication flow; USERNAME and PASSWORD are passed directly. If a
* user migration Lambda trigger is set, this flow will invoke the user migration
* Lambda if the USERNAME is not found in the user pool.
* ADMIN_USER_PASSWORD_AUTH: Admin-based user password authentication.
* This replaces the ADMIN_NO_SRP_AUTH authentication flow. In this
* flow, Cognito receives the password in the request instead of using the SRP
* process to verify passwords.
The authentication flow for this call to execute. The API action will depend * on this value. For example:
REFRESH_TOKEN_AUTH
* will take in a valid refresh token and return new tokens.
* USER_SRP_AUTH will take in USERNAME and
* SRP_A and return the SRP variables to be used for next challenge
* execution.
USER_PASSWORD_AUTH will take in
* USERNAME and PASSWORD and return 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.
ADMIN_NO_SRP_AUTH: Non-SRP authentication
* flow; you can pass in the USERNAME and PASSWORD directly if the flow is enabled
* for calling the app client.
USER_PASSWORD_AUTH:
* Non-SRP authentication flow; USERNAME and PASSWORD are passed directly. If a
* user migration Lambda trigger is set, this flow will invoke the user migration
* Lambda if the USERNAME is not found in the user pool.
* ADMIN_USER_PASSWORD_AUTH: Admin-based user password authentication.
* This replaces the ADMIN_NO_SRP_AUTH authentication flow. In this
* flow, Cognito receives the password in the request instead of using the SRP
* process to verify passwords.
The authentication flow for this call to execute. The API action will depend * on this value. For example:
REFRESH_TOKEN_AUTH
* will take in a valid refresh token and return new tokens.
* USER_SRP_AUTH will take in USERNAME and
* SRP_A and return the SRP variables to be used for next challenge
* execution.
USER_PASSWORD_AUTH will take in
* USERNAME and PASSWORD and return 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.
ADMIN_NO_SRP_AUTH: Non-SRP authentication
* flow; you can pass in the USERNAME and PASSWORD directly if the flow is enabled
* for calling the app client.
USER_PASSWORD_AUTH:
* Non-SRP authentication flow; USERNAME and PASSWORD are passed directly. If a
* user migration Lambda trigger is set, this flow will invoke the user migration
* Lambda if the USERNAME is not found in the user pool.
* ADMIN_USER_PASSWORD_AUTH: Admin-based user password authentication.
* This replaces the ADMIN_NO_SRP_AUTH authentication flow. In this
* flow, Cognito receives the password in the request instead of using the SRP
* process to verify passwords.
The authentication parameters. These are inputs corresponding to the
* AuthFlow that you are 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
* ADMIN_NO_SRP_AUTH: USERNAME (required),
* SECRET_HASH (if app client is configured with client secret),
* PASSWORD (required), 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 are 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
* ADMIN_NO_SRP_AUTH: USERNAME (required),
* SECRET_HASH (if app client is configured with client secret),
* PASSWORD (required), 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 are 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
* ADMIN_NO_SRP_AUTH: USERNAME (required),
* SECRET_HASH (if app client is configured with client secret),
* PASSWORD (required), 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 are 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
* ADMIN_NO_SRP_AUTH: USERNAME (required),
* SECRET_HASH (if app client is configured with client secret),
* PASSWORD (required), 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 are 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
* ADMIN_NO_SRP_AUTH: USERNAME (required),
* SECRET_HASH (if app client is configured with client secret),
* PASSWORD (required), 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 are 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
* ADMIN_NO_SRP_AUTH: USERNAME (required),
* SECRET_HASH (if app client is configured with client secret),
* PASSWORD (required), 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 are 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
* ADMIN_NO_SRP_AUTH: USERNAME (required),
* SECRET_HASH (if app client is configured with client secret),
* PASSWORD (required), 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 are 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
* ADMIN_NO_SRP_AUTH: USERNAME (required),
* SECRET_HASH (if app client is configured with client secret),
* PASSWORD (required), 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 are 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
* ADMIN_NO_SRP_AUTH: USERNAME (required),
* SECRET_HASH (if app client is configured with client secret),
* PASSWORD (required), 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 are 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
* ADMIN_NO_SRP_AUTH: USERNAME (required),
* SECRET_HASH (if app client is configured with client secret),
* PASSWORD (required), 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 are 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
* ADMIN_NO_SRP_AUTH: USERNAME (required),
* SECRET_HASH (if app client is configured with client secret),
* PASSWORD (required), 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 are 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
* ADMIN_NO_SRP_AUTH: USERNAME (required),
* SECRET_HASH (if app client is configured with client secret),
* PASSWORD (required), 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 are 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
* ADMIN_NO_SRP_AUTH: USERNAME (required),
* SECRET_HASH (if app client is configured with client secret),
* PASSWORD (required), 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 AWS Lambda functions to user pool triggers. When you use the * AdminInitiateAuth API action, Amazon Cognito invokes the AWS 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 AdminInitiateAuth request.
* In your function code in AWS Lambda, you can process the
* validationData value to enhance your workflow for your specific
* needs.
When you use the AdminInitiateAuth API action, Amazon Cognito also * invokes the functions for the following triggers, but it does not 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.
Take the following limitations into consideration when * you use the ClientMetadata parameter:
Amazon Cognito does not * store the ClientMetadata value. This data is available only to AWS Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration does not include triggers, the ClientMetadata parameter * serves no purpose.
Amazon Cognito does not validate the * ClientMetadata value.
Amazon Cognito does not encrypt the the * ClientMetadata value, so don't use it 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 AWS Lambda functions to user pool triggers. When you use the * AdminInitiateAuth API action, Amazon Cognito invokes the AWS 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 AdminInitiateAuth request.
* In your function code in AWS Lambda, you can process the
* validationData value to enhance your workflow for your specific
* needs.
When you use the AdminInitiateAuth API action, Amazon Cognito also * invokes the functions for the following triggers, but it does not 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.
Take the following limitations into consideration when * you use the ClientMetadata parameter:
Amazon Cognito does not * store the ClientMetadata value. This data is available only to AWS Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration does not include triggers, the ClientMetadata parameter * serves no purpose.
Amazon Cognito does not validate the * ClientMetadata value.
Amazon Cognito does not encrypt the the * ClientMetadata value, so don't use it 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 AWS Lambda functions to user pool triggers. When you use the * AdminInitiateAuth API action, Amazon Cognito invokes the AWS 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 AdminInitiateAuth request.
* In your function code in AWS Lambda, you can process the
* validationData value to enhance your workflow for your specific
* needs.
When you use the AdminInitiateAuth API action, Amazon Cognito also * invokes the functions for the following triggers, but it does not 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.
Take the following limitations into consideration when * you use the ClientMetadata parameter:
Amazon Cognito does not * store the ClientMetadata value. This data is available only to AWS Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration does not include triggers, the ClientMetadata parameter * serves no purpose.
Amazon Cognito does not validate the * ClientMetadata value.
Amazon Cognito does not encrypt the the * ClientMetadata value, so don't use it 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 AWS Lambda functions to user pool triggers. When you use the * AdminInitiateAuth API action, Amazon Cognito invokes the AWS 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 AdminInitiateAuth request.
* In your function code in AWS Lambda, you can process the
* validationData value to enhance your workflow for your specific
* needs.
When you use the AdminInitiateAuth API action, Amazon Cognito also * invokes the functions for the following triggers, but it does not 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.
Take the following limitations into consideration when * you use the ClientMetadata parameter:
Amazon Cognito does not * store the ClientMetadata value. This data is available only to AWS Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration does not include triggers, the ClientMetadata parameter * serves no purpose.
Amazon Cognito does not validate the * ClientMetadata value.
Amazon Cognito does not encrypt the the * ClientMetadata value, so don't use it 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 AWS Lambda functions to user pool triggers. When you use the * AdminInitiateAuth API action, Amazon Cognito invokes the AWS 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 AdminInitiateAuth request.
* In your function code in AWS Lambda, you can process the
* validationData value to enhance your workflow for your specific
* needs.
When you use the AdminInitiateAuth API action, Amazon Cognito also * invokes the functions for the following triggers, but it does not 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.
Take the following limitations into consideration when * you use the ClientMetadata parameter:
Amazon Cognito does not * store the ClientMetadata value. This data is available only to AWS Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration does not include triggers, the ClientMetadata parameter * serves no purpose.
Amazon Cognito does not validate the * ClientMetadata value.
Amazon Cognito does not encrypt the the * ClientMetadata value, so don't use it 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 AWS Lambda functions to user pool triggers. When you use the * AdminInitiateAuth API action, Amazon Cognito invokes the AWS 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 AdminInitiateAuth request.
* In your function code in AWS Lambda, you can process the
* validationData value to enhance your workflow for your specific
* needs.
When you use the AdminInitiateAuth API action, Amazon Cognito also * invokes the functions for the following triggers, but it does not 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.
Take the following limitations into consideration when * you use the ClientMetadata parameter:
Amazon Cognito does not * store the ClientMetadata value. This data is available only to AWS Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration does not include triggers, the ClientMetadata parameter * serves no purpose.
Amazon Cognito does not validate the * ClientMetadata value.
Amazon Cognito does not encrypt the the * ClientMetadata value, so don't use it 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 AWS Lambda functions to user pool triggers. When you use the * AdminInitiateAuth API action, Amazon Cognito invokes the AWS 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 AdminInitiateAuth request.
* In your function code in AWS Lambda, you can process the
* validationData value to enhance your workflow for your specific
* needs.
When you use the AdminInitiateAuth API action, Amazon Cognito also * invokes the functions for the following triggers, but it does not 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.
Take the following limitations into consideration when * you use the ClientMetadata parameter:
Amazon Cognito does not * store the ClientMetadata value. This data is available only to AWS Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration does not include triggers, the ClientMetadata parameter * serves no purpose.
Amazon Cognito does not validate the * ClientMetadata value.
Amazon Cognito does not encrypt the the * ClientMetadata value, so don't use it 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 AWS Lambda functions to user pool triggers. When you use the * AdminInitiateAuth API action, Amazon Cognito invokes the AWS 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 AdminInitiateAuth request.
* In your function code in AWS Lambda, you can process the
* validationData value to enhance your workflow for your specific
* needs.
When you use the AdminInitiateAuth API action, Amazon Cognito also * invokes the functions for the following triggers, but it does not 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.
Take the following limitations into consideration when * you use the ClientMetadata parameter:
Amazon Cognito does not * store the ClientMetadata value. This data is available only to AWS Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration does not include triggers, the ClientMetadata parameter * serves no purpose.
Amazon Cognito does not validate the * ClientMetadata value.
Amazon Cognito does not encrypt the the * ClientMetadata value, so don't use it 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 AWS Lambda functions to user pool triggers. When you use the * AdminInitiateAuth API action, Amazon Cognito invokes the AWS 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 AdminInitiateAuth request.
* In your function code in AWS Lambda, you can process the
* validationData value to enhance your workflow for your specific
* needs.
When you use the AdminInitiateAuth API action, Amazon Cognito also * invokes the functions for the following triggers, but it does not 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.
Take the following limitations into consideration when * you use the ClientMetadata parameter:
Amazon Cognito does not * store the ClientMetadata value. This data is available only to AWS Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration does not include triggers, the ClientMetadata parameter * serves no purpose.
Amazon Cognito does not validate the * ClientMetadata value.
Amazon Cognito does not encrypt the the * ClientMetadata value, so don't use it 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 AWS Lambda functions to user pool triggers. When you use the * AdminInitiateAuth API action, Amazon Cognito invokes the AWS 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 AdminInitiateAuth request.
* In your function code in AWS Lambda, you can process the
* validationData value to enhance your workflow for your specific
* needs.
When you use the AdminInitiateAuth API action, Amazon Cognito also * invokes the functions for the following triggers, but it does not 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.
Take the following limitations into consideration when * you use the ClientMetadata parameter:
Amazon Cognito does not * store the ClientMetadata value. This data is available only to AWS Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration does not include triggers, the ClientMetadata parameter * serves no purpose.
Amazon Cognito does not validate the * ClientMetadata value.
Amazon Cognito does not encrypt the the * ClientMetadata value, so don't use it 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 AWS Lambda functions to user pool triggers. When you use the * AdminInitiateAuth API action, Amazon Cognito invokes the AWS 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 AdminInitiateAuth request.
* In your function code in AWS Lambda, you can process the
* validationData value to enhance your workflow for your specific
* needs.
When you use the AdminInitiateAuth API action, Amazon Cognito also * invokes the functions for the following triggers, but it does not 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.
Take the following limitations into consideration when * you use the ClientMetadata parameter:
Amazon Cognito does not * store the ClientMetadata value. This data is available only to AWS Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration does not include triggers, the ClientMetadata parameter * serves no purpose.
Amazon Cognito does not validate the * ClientMetadata value.
Amazon Cognito does not encrypt the the * ClientMetadata value, so don't use it 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 AWS Lambda functions to user pool triggers. When you use the * AdminInitiateAuth API action, Amazon Cognito invokes the AWS 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 AdminInitiateAuth request.
* In your function code in AWS Lambda, you can process the
* validationData value to enhance your workflow for your specific
* needs.
When you use the AdminInitiateAuth API action, Amazon Cognito also * invokes the functions for the following triggers, but it does not 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.
Take the following limitations into consideration when * you use the ClientMetadata parameter:
Amazon Cognito does not * store the ClientMetadata value. This data is available only to AWS Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration does not include triggers, the ClientMetadata parameter * serves no purpose.
Amazon Cognito does not validate the * ClientMetadata value.
Amazon Cognito does not encrypt the the * ClientMetadata value, so don't use it 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 AWS Lambda functions to user pool triggers. When you use the * AdminInitiateAuth API action, Amazon Cognito invokes the AWS 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 AdminInitiateAuth request.
* In your function code in AWS Lambda, you can process the
* validationData value to enhance your workflow for your specific
* needs.
When you use the AdminInitiateAuth API action, Amazon Cognito also * invokes the functions for the following triggers, but it does not 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.
Take the following limitations into consideration when * you use the ClientMetadata parameter:
Amazon Cognito does not * store the ClientMetadata value. This data is available only to AWS Lambda * triggers that are assigned to a user pool to support custom workflows. If your * user pool configuration does not include triggers, the ClientMetadata parameter * serves no purpose.
Amazon Cognito does not validate the * ClientMetadata value.
Amazon Cognito does not encrypt the the * ClientMetadata value, so don't use it to provide sensitive information.
*The analytics metadata for collecting Amazon Pinpoint metrics for
* AdminInitiateAuth calls.
The analytics metadata for collecting Amazon Pinpoint metrics for
* AdminInitiateAuth calls.
The analytics metadata for collecting Amazon Pinpoint metrics for
* AdminInitiateAuth calls.
The analytics metadata for collecting Amazon Pinpoint metrics for
* AdminInitiateAuth calls.
The analytics metadata for collecting Amazon Pinpoint metrics for
* AdminInitiateAuth calls.
The analytics metadata for collecting Amazon Pinpoint metrics for
* AdminInitiateAuth calls.
Contextual data such as the user's device fingerprint, IP address, or * location used for evaluating the risk of an unexpected event by Amazon Cognito * advanced security.
*/ inline const ContextDataType& GetContextData() const{ return m_contextData; } /** *Contextual data such as the user's device fingerprint, IP address, or * location used for evaluating the risk of an unexpected event by Amazon Cognito * advanced security.
*/ inline bool ContextDataHasBeenSet() const { return m_contextDataHasBeenSet; } /** *Contextual data such as the user's device fingerprint, IP address, or * location used for evaluating the risk of an unexpected event by Amazon Cognito * advanced security.
*/ inline void SetContextData(const ContextDataType& value) { m_contextDataHasBeenSet = true; m_contextData = value; } /** *Contextual data such as the user's device fingerprint, IP address, or * location used for evaluating the risk of an unexpected event by Amazon Cognito * advanced security.
*/ inline void SetContextData(ContextDataType&& value) { m_contextDataHasBeenSet = true; m_contextData = std::move(value); } /** *Contextual data such as the user's device fingerprint, IP address, or * location used for evaluating the risk of an unexpected event by Amazon Cognito * advanced security.
*/ inline AdminInitiateAuthRequest& WithContextData(const ContextDataType& value) { SetContextData(value); return *this;} /** *Contextual data such as the user's device fingerprint, IP address, or * location used for evaluating the risk of an unexpected event by Amazon Cognito * advanced security.
*/ inline AdminInitiateAuthRequest& WithContextData(ContextDataType&& value) { SetContextData(std::move(value)); return *this;} private: Aws::String m_userPoolId; bool m_userPoolIdHasBeenSet; Aws::String m_clientId; bool m_clientIdHasBeenSet; AuthFlowType m_authFlow; bool m_authFlowHasBeenSet; Aws::Map