Calling this API causes a message to be sent to the end user with a confirmation code that is required to change the user's password. For the Username
parameter, you can use the username or user alias. The method used to send the confirmation code is sent according to the specified AccountRecoverySetting. For more information, see Recovering User Accounts in the Amazon Cognito Developer Guide. To use the confirmation code for resetting the password, call confirm_forgot_password
.
See https://www.paws-r-sdk.com/docs/cognitoidentityprovider_forgot_password/ for full documentation.
cognitoidentityprovider_forgot_password(
ClientId,
SecretHash = NULL,
UserContextData = NULL,
Username,
AnalyticsMetadata = NULL,
ClientMetadata = NULL
)
[required] The ID of the client associated with the user pool.
A keyed-hash message authentication code (HMAC) calculated using the secret key of a user pool client and username plus the client ID in the message.
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.
[required] The username of the user that you want to query or modify. The value of
this parameter is typically your user's username, but it can be any of
their alias attributes. If username
isn't an alias attribute in your
user pool, this value must be the sub
of a local user or the username
of a user from a third-party IdP.
The Amazon Pinpoint analytics metadata that contributes to your metrics
for forgot_password
calls.
A map of custom key-value pairs that you can provide as input for any custom workflows that this action triggers.
You create custom workflows by assigning Lambda functions to user pool
triggers. When you use the ForgotPassword API action, Amazon Cognito
invokes any functions that are assigned to the following triggers: pre
sign-up, custom message, and user migration. When Amazon Cognito
invokes any of these functions, it passes a JSON payload, which the
function receives as input. This payload contains a clientMetadata
attribute, which provides the data that you assigned to the
ClientMetadata parameter in your ForgotPassword request. In your
function code in Lambda, you can process the clientMetadata
value to
enhance your workflow for your specific needs.
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.