/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.cognitoidp.model; import java.io.Serializable; import javax.annotation.Generated; /** *
* Initiates the authentication response, as an administrator. *
* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class AdminInitiateAuthResult extends com.amazonaws.AmazonWebServiceResult
* The name of the challenge that you're responding to with this call. This is returned in the
* AdminInitiateAuth response if you must pass another challenge.
*
* MFA_SETUP: If MFA is required, users who don't have at least one of the MFA methods set up are
* presented with an MFA_SETUP challenge. The user must set up at least one MFA type to continue to
* authenticate.
*
* SELECT_MFA_TYPE: Selects the MFA type. Valid MFA options are SMS_MFA for text SMS MFA,
* and SOFTWARE_TOKEN_MFA for time-based one-time password (TOTP) software token MFA.
*
* SMS_MFA: Next challenge is to supply an SMS_MFA_CODE, delivered via SMS.
*
* PASSWORD_VERIFIER: Next challenge is to supply PASSWORD_CLAIM_SIGNATURE,
* PASSWORD_CLAIM_SECRET_BLOCK, and TIMESTAMP after the client-side SRP calculations.
*
* CUSTOM_CHALLENGE: This is returned if your custom authentication flow determines that the user
* should pass another challenge before tokens are issued.
*
* DEVICE_SRP_AUTH: If device tracking was activated in your user pool and the previous challenges were
* passed, this challenge is returned so that Amazon Cognito can start tracking this device.
*
* DEVICE_PASSWORD_VERIFIER: Similar to PASSWORD_VERIFIER, but for devices only.
*
* ADMIN_NO_SRP_AUTH: This is returned if you must authenticate with USERNAME and
* PASSWORD directly. An app client must be enabled to use this flow.
*
* NEW_PASSWORD_REQUIRED: For users who are required to change their passwords after successful first
* login. Respond to this challenge with NEW_PASSWORD and any required attributes that Amazon Cognito
* returned in the requiredAttributes parameter. You can also set values for attributes that aren't
* required by your user pool and that your app client can write. For more information, see AdminRespondToAuthChallenge.
*
* In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already
* has a value. In AdminRespondToAuthChallenge, set a value for any keys that Amazon Cognito returned
* in the requiredAttributes parameter, then use the AdminUpdateUserAttributes API
* operation to modify the value of any additional attributes.
*
* MFA_SETUP: For users who are required to set up an MFA factor before they can sign in. The MFA types
* activated for the user pool will be listed in the challenge parameters MFA_CAN_SETUP value.
*
* To set up software token MFA, use the session returned here from InitiateAuth as an input to
* AssociateSoftwareToken, and use the session returned by VerifySoftwareToken as an input
* to RespondToAuthChallenge with challenge name MFA_SETUP to complete sign-in. To set up
* SMS MFA, users will need help from an administrator to add a phone number to their account and then call
* InitiateAuth again to restart sign-in.
*
* The session that should be passed both ways in challenge-response calls to the service. If
* AdminInitiateAuth or AdminRespondToAuthChallenge API call determines that the caller
* must pass another challenge, they return a session with other challenge parameters. This session should be passed
* as it is to the next AdminRespondToAuthChallenge API call.
*
* The challenge parameters. These are returned to you in the AdminInitiateAuth response if you must
* pass another challenge. The responses in this parameter should be used to compute inputs to the next call (
* AdminRespondToAuthChallenge).
*
* All challenges require USERNAME and SECRET_HASH (if applicable).
*
* The value of the USER_ID_FOR_SRP attribute is the user's actual username, not an alias (such as
* email address or phone number), even if you specified an alias in your call to AdminInitiateAuth.
* This happens because, in the AdminRespondToAuthChallenge API ChallengeResponses, the
* USERNAME attribute can't be an alias.
*
* The result of the authentication response. This is only returned if the caller doesn't need to pass another
* challenge. If the caller does need to pass another challenge before it gets tokens, ChallengeName,
* ChallengeParameters, and Session are returned.
*
* The name of the challenge that you're responding to with this call. This is returned in the
* AdminInitiateAuth response if you must pass another challenge.
*
* MFA_SETUP: If MFA is required, users who don't have at least one of the MFA methods set up are
* presented with an MFA_SETUP challenge. The user must set up at least one MFA type to continue to
* authenticate.
*
* SELECT_MFA_TYPE: Selects the MFA type. Valid MFA options are SMS_MFA for text SMS MFA,
* and SOFTWARE_TOKEN_MFA for time-based one-time password (TOTP) software token MFA.
*
* SMS_MFA: Next challenge is to supply an SMS_MFA_CODE, delivered via SMS.
*
* PASSWORD_VERIFIER: Next challenge is to supply PASSWORD_CLAIM_SIGNATURE,
* PASSWORD_CLAIM_SECRET_BLOCK, and TIMESTAMP after the client-side SRP calculations.
*
* CUSTOM_CHALLENGE: This is returned if your custom authentication flow determines that the user
* should pass another challenge before tokens are issued.
*
* DEVICE_SRP_AUTH: If device tracking was activated in your user pool and the previous challenges were
* passed, this challenge is returned so that Amazon Cognito can start tracking this device.
*
* DEVICE_PASSWORD_VERIFIER: Similar to PASSWORD_VERIFIER, but for devices only.
*
* ADMIN_NO_SRP_AUTH: This is returned if you must authenticate with USERNAME and
* PASSWORD directly. An app client must be enabled to use this flow.
*
* NEW_PASSWORD_REQUIRED: For users who are required to change their passwords after successful first
* login. Respond to this challenge with NEW_PASSWORD and any required attributes that Amazon Cognito
* returned in the requiredAttributes parameter. You can also set values for attributes that aren't
* required by your user pool and that your app client can write. For more information, see AdminRespondToAuthChallenge.
*
* In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already
* has a value. In AdminRespondToAuthChallenge, set a value for any keys that Amazon Cognito returned
* in the requiredAttributes parameter, then use the AdminUpdateUserAttributes API
* operation to modify the value of any additional attributes.
*
* MFA_SETUP: For users who are required to set up an MFA factor before they can sign in. The MFA types
* activated for the user pool will be listed in the challenge parameters MFA_CAN_SETUP value.
*
* To set up software token MFA, use the session returned here from InitiateAuth as an input to
* AssociateSoftwareToken, and use the session returned by VerifySoftwareToken as an input
* to RespondToAuthChallenge with challenge name MFA_SETUP to complete sign-in. To set up
* SMS MFA, users will need help from an administrator to add a phone number to their account and then call
* InitiateAuth again to restart sign-in.
*
AdminInitiateAuth response if you must pass another challenge.
*
* MFA_SETUP: If MFA is required, users who don't have at least one of the MFA methods set up
* are presented with an MFA_SETUP challenge. The user must set up at least one MFA type to
* continue to authenticate.
*
* SELECT_MFA_TYPE: Selects the MFA type. Valid MFA options are SMS_MFA for text
* SMS MFA, and SOFTWARE_TOKEN_MFA for time-based one-time password (TOTP) software token MFA.
*
* SMS_MFA: Next challenge is to supply an SMS_MFA_CODE, delivered via SMS.
*
* PASSWORD_VERIFIER: Next challenge is to supply PASSWORD_CLAIM_SIGNATURE,
* PASSWORD_CLAIM_SECRET_BLOCK, and TIMESTAMP after the client-side SRP
* calculations.
*
* CUSTOM_CHALLENGE: This is returned if your custom authentication flow determines that the
* user should pass another challenge before tokens are issued.
*
* DEVICE_SRP_AUTH: If device tracking was activated in your user pool and the previous
* challenges were passed, this challenge is returned so that Amazon Cognito can start tracking this device.
*
* DEVICE_PASSWORD_VERIFIER: Similar to PASSWORD_VERIFIER, but for devices only.
*
* ADMIN_NO_SRP_AUTH: This is returned if you must authenticate with USERNAME and
* PASSWORD directly. An app client must be enabled to use this flow.
*
* NEW_PASSWORD_REQUIRED: For users who are required to change their passwords after successful
* first login. Respond to this challenge with NEW_PASSWORD and any required attributes that
* Amazon Cognito returned in the requiredAttributes parameter. You can also set values for
* attributes that aren't required by your user pool and that your app client can write. For more
* information, see AdminRespondToAuthChallenge.
*
* In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that
* already has a value. In AdminRespondToAuthChallenge, set a value for any keys that Amazon
* Cognito returned in the requiredAttributes parameter, then use the
* AdminUpdateUserAttributes API operation to modify the value of any additional attributes.
*
* MFA_SETUP: For users who are required to set up an MFA factor before they can sign in. The
* MFA types activated for the user pool will be listed in the challenge parameters
* MFA_CAN_SETUP value.
*
* To set up software token MFA, use the session returned here from InitiateAuth as an input to
* AssociateSoftwareToken, and use the session returned by VerifySoftwareToken as
* an input to RespondToAuthChallenge with challenge name MFA_SETUP to complete
* sign-in. To set up SMS MFA, users will need help from an administrator to add a phone number to their
* account and then call InitiateAuth again to restart sign-in.
*
* The name of the challenge that you're responding to with this call. This is returned in the
* AdminInitiateAuth response if you must pass another challenge.
*
* MFA_SETUP: If MFA is required, users who don't have at least one of the MFA methods set up are
* presented with an MFA_SETUP challenge. The user must set up at least one MFA type to continue to
* authenticate.
*
* SELECT_MFA_TYPE: Selects the MFA type. Valid MFA options are SMS_MFA for text SMS MFA,
* and SOFTWARE_TOKEN_MFA for time-based one-time password (TOTP) software token MFA.
*
* SMS_MFA: Next challenge is to supply an SMS_MFA_CODE, delivered via SMS.
*
* PASSWORD_VERIFIER: Next challenge is to supply PASSWORD_CLAIM_SIGNATURE,
* PASSWORD_CLAIM_SECRET_BLOCK, and TIMESTAMP after the client-side SRP calculations.
*
* CUSTOM_CHALLENGE: This is returned if your custom authentication flow determines that the user
* should pass another challenge before tokens are issued.
*
* DEVICE_SRP_AUTH: If device tracking was activated in your user pool and the previous challenges were
* passed, this challenge is returned so that Amazon Cognito can start tracking this device.
*
* DEVICE_PASSWORD_VERIFIER: Similar to PASSWORD_VERIFIER, but for devices only.
*
* ADMIN_NO_SRP_AUTH: This is returned if you must authenticate with USERNAME and
* PASSWORD directly. An app client must be enabled to use this flow.
*
* NEW_PASSWORD_REQUIRED: For users who are required to change their passwords after successful first
* login. Respond to this challenge with NEW_PASSWORD and any required attributes that Amazon Cognito
* returned in the requiredAttributes parameter. You can also set values for attributes that aren't
* required by your user pool and that your app client can write. For more information, see AdminRespondToAuthChallenge.
*
* In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already
* has a value. In AdminRespondToAuthChallenge, set a value for any keys that Amazon Cognito returned
* in the requiredAttributes parameter, then use the AdminUpdateUserAttributes API
* operation to modify the value of any additional attributes.
*
* MFA_SETUP: For users who are required to set up an MFA factor before they can sign in. The MFA types
* activated for the user pool will be listed in the challenge parameters MFA_CAN_SETUP value.
*
* To set up software token MFA, use the session returned here from InitiateAuth as an input to
* AssociateSoftwareToken, and use the session returned by VerifySoftwareToken as an input
* to RespondToAuthChallenge with challenge name MFA_SETUP to complete sign-in. To set up
* SMS MFA, users will need help from an administrator to add a phone number to their account and then call
* InitiateAuth again to restart sign-in.
*
AdminInitiateAuth response if you must pass another challenge.
*
* MFA_SETUP: If MFA is required, users who don't have at least one of the MFA methods set up
* are presented with an MFA_SETUP challenge. The user must set up at least one MFA type to
* continue to authenticate.
*
* SELECT_MFA_TYPE: Selects the MFA type. Valid MFA options are SMS_MFA for text
* SMS MFA, and SOFTWARE_TOKEN_MFA for time-based one-time password (TOTP) software token MFA.
*
* SMS_MFA: Next challenge is to supply an SMS_MFA_CODE, delivered via SMS.
*
* PASSWORD_VERIFIER: Next challenge is to supply PASSWORD_CLAIM_SIGNATURE,
* PASSWORD_CLAIM_SECRET_BLOCK, and TIMESTAMP after the client-side SRP
* calculations.
*
* CUSTOM_CHALLENGE: This is returned if your custom authentication flow determines that the
* user should pass another challenge before tokens are issued.
*
* DEVICE_SRP_AUTH: If device tracking was activated in your user pool and the previous
* challenges were passed, this challenge is returned so that Amazon Cognito can start tracking this device.
*
* DEVICE_PASSWORD_VERIFIER: Similar to PASSWORD_VERIFIER, but for devices only.
*
* ADMIN_NO_SRP_AUTH: This is returned if you must authenticate with USERNAME and
* PASSWORD directly. An app client must be enabled to use this flow.
*
* NEW_PASSWORD_REQUIRED: For users who are required to change their passwords after successful
* first login. Respond to this challenge with NEW_PASSWORD and any required attributes that
* Amazon Cognito returned in the requiredAttributes parameter. You can also set values for
* attributes that aren't required by your user pool and that your app client can write. For more
* information, see AdminRespondToAuthChallenge.
*
* In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that
* already has a value. In AdminRespondToAuthChallenge, set a value for any keys that Amazon
* Cognito returned in the requiredAttributes parameter, then use the
* AdminUpdateUserAttributes API operation to modify the value of any additional attributes.
*
* MFA_SETUP: For users who are required to set up an MFA factor before they can sign in. The
* MFA types activated for the user pool will be listed in the challenge parameters
* MFA_CAN_SETUP value.
*
* To set up software token MFA, use the session returned here from InitiateAuth as an input to
* AssociateSoftwareToken, and use the session returned by VerifySoftwareToken as
* an input to RespondToAuthChallenge with challenge name MFA_SETUP to complete
* sign-in. To set up SMS MFA, users will need help from an administrator to add a phone number to their
* account and then call InitiateAuth again to restart sign-in.
*
* The name of the challenge that you're responding to with this call. This is returned in the
* AdminInitiateAuth response if you must pass another challenge.
*
* MFA_SETUP: If MFA is required, users who don't have at least one of the MFA methods set up are
* presented with an MFA_SETUP challenge. The user must set up at least one MFA type to continue to
* authenticate.
*
* SELECT_MFA_TYPE: Selects the MFA type. Valid MFA options are SMS_MFA for text SMS MFA,
* and SOFTWARE_TOKEN_MFA for time-based one-time password (TOTP) software token MFA.
*
* SMS_MFA: Next challenge is to supply an SMS_MFA_CODE, delivered via SMS.
*
* PASSWORD_VERIFIER: Next challenge is to supply PASSWORD_CLAIM_SIGNATURE,
* PASSWORD_CLAIM_SECRET_BLOCK, and TIMESTAMP after the client-side SRP calculations.
*
* CUSTOM_CHALLENGE: This is returned if your custom authentication flow determines that the user
* should pass another challenge before tokens are issued.
*
* DEVICE_SRP_AUTH: If device tracking was activated in your user pool and the previous challenges were
* passed, this challenge is returned so that Amazon Cognito can start tracking this device.
*
* DEVICE_PASSWORD_VERIFIER: Similar to PASSWORD_VERIFIER, but for devices only.
*
* ADMIN_NO_SRP_AUTH: This is returned if you must authenticate with USERNAME and
* PASSWORD directly. An app client must be enabled to use this flow.
*
* NEW_PASSWORD_REQUIRED: For users who are required to change their passwords after successful first
* login. Respond to this challenge with NEW_PASSWORD and any required attributes that Amazon Cognito
* returned in the requiredAttributes parameter. You can also set values for attributes that aren't
* required by your user pool and that your app client can write. For more information, see AdminRespondToAuthChallenge.
*
* In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already
* has a value. In AdminRespondToAuthChallenge, set a value for any keys that Amazon Cognito returned
* in the requiredAttributes parameter, then use the AdminUpdateUserAttributes API
* operation to modify the value of any additional attributes.
*
* MFA_SETUP: For users who are required to set up an MFA factor before they can sign in. The MFA types
* activated for the user pool will be listed in the challenge parameters MFA_CAN_SETUP value.
*
* To set up software token MFA, use the session returned here from InitiateAuth as an input to
* AssociateSoftwareToken, and use the session returned by VerifySoftwareToken as an input
* to RespondToAuthChallenge with challenge name MFA_SETUP to complete sign-in. To set up
* SMS MFA, users will need help from an administrator to add a phone number to their account and then call
* InitiateAuth again to restart sign-in.
*
AdminInitiateAuth response if you must pass another challenge.
*
* MFA_SETUP: If MFA is required, users who don't have at least one of the MFA methods set up
* are presented with an MFA_SETUP challenge. The user must set up at least one MFA type to
* continue to authenticate.
*
* SELECT_MFA_TYPE: Selects the MFA type. Valid MFA options are SMS_MFA for text
* SMS MFA, and SOFTWARE_TOKEN_MFA for time-based one-time password (TOTP) software token MFA.
*
* SMS_MFA: Next challenge is to supply an SMS_MFA_CODE, delivered via SMS.
*
* PASSWORD_VERIFIER: Next challenge is to supply PASSWORD_CLAIM_SIGNATURE,
* PASSWORD_CLAIM_SECRET_BLOCK, and TIMESTAMP after the client-side SRP
* calculations.
*
* CUSTOM_CHALLENGE: This is returned if your custom authentication flow determines that the
* user should pass another challenge before tokens are issued.
*
* DEVICE_SRP_AUTH: If device tracking was activated in your user pool and the previous
* challenges were passed, this challenge is returned so that Amazon Cognito can start tracking this device.
*
* DEVICE_PASSWORD_VERIFIER: Similar to PASSWORD_VERIFIER, but for devices only.
*
* ADMIN_NO_SRP_AUTH: This is returned if you must authenticate with USERNAME and
* PASSWORD directly. An app client must be enabled to use this flow.
*
* NEW_PASSWORD_REQUIRED: For users who are required to change their passwords after successful
* first login. Respond to this challenge with NEW_PASSWORD and any required attributes that
* Amazon Cognito returned in the requiredAttributes parameter. You can also set values for
* attributes that aren't required by your user pool and that your app client can write. For more
* information, see AdminRespondToAuthChallenge.
*
* In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that
* already has a value. In AdminRespondToAuthChallenge, set a value for any keys that Amazon
* Cognito returned in the requiredAttributes parameter, then use the
* AdminUpdateUserAttributes API operation to modify the value of any additional attributes.
*
* MFA_SETUP: For users who are required to set up an MFA factor before they can sign in. The
* MFA types activated for the user pool will be listed in the challenge parameters
* MFA_CAN_SETUP value.
*
* To set up software token MFA, use the session returned here from InitiateAuth as an input to
* AssociateSoftwareToken, and use the session returned by VerifySoftwareToken as
* an input to RespondToAuthChallenge with challenge name MFA_SETUP to complete
* sign-in. To set up SMS MFA, users will need help from an administrator to add a phone number to their
* account and then call InitiateAuth again to restart sign-in.
*
* The name of the challenge that you're responding to with this call. This is returned in the
* AdminInitiateAuth response if you must pass another challenge.
*
* MFA_SETUP: If MFA is required, users who don't have at least one of the MFA methods set up are
* presented with an MFA_SETUP challenge. The user must set up at least one MFA type to continue to
* authenticate.
*
* SELECT_MFA_TYPE: Selects the MFA type. Valid MFA options are SMS_MFA for text SMS MFA,
* and SOFTWARE_TOKEN_MFA for time-based one-time password (TOTP) software token MFA.
*
* SMS_MFA: Next challenge is to supply an SMS_MFA_CODE, delivered via SMS.
*
* PASSWORD_VERIFIER: Next challenge is to supply PASSWORD_CLAIM_SIGNATURE,
* PASSWORD_CLAIM_SECRET_BLOCK, and TIMESTAMP after the client-side SRP calculations.
*
* CUSTOM_CHALLENGE: This is returned if your custom authentication flow determines that the user
* should pass another challenge before tokens are issued.
*
* DEVICE_SRP_AUTH: If device tracking was activated in your user pool and the previous challenges were
* passed, this challenge is returned so that Amazon Cognito can start tracking this device.
*
* DEVICE_PASSWORD_VERIFIER: Similar to PASSWORD_VERIFIER, but for devices only.
*
* ADMIN_NO_SRP_AUTH: This is returned if you must authenticate with USERNAME and
* PASSWORD directly. An app client must be enabled to use this flow.
*
* NEW_PASSWORD_REQUIRED: For users who are required to change their passwords after successful first
* login. Respond to this challenge with NEW_PASSWORD and any required attributes that Amazon Cognito
* returned in the requiredAttributes parameter. You can also set values for attributes that aren't
* required by your user pool and that your app client can write. For more information, see AdminRespondToAuthChallenge.
*
* In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already
* has a value. In AdminRespondToAuthChallenge, set a value for any keys that Amazon Cognito returned
* in the requiredAttributes parameter, then use the AdminUpdateUserAttributes API
* operation to modify the value of any additional attributes.
*
* MFA_SETUP: For users who are required to set up an MFA factor before they can sign in. The MFA types
* activated for the user pool will be listed in the challenge parameters MFA_CAN_SETUP value.
*
* To set up software token MFA, use the session returned here from InitiateAuth as an input to
* AssociateSoftwareToken, and use the session returned by VerifySoftwareToken as an input
* to RespondToAuthChallenge with challenge name MFA_SETUP to complete sign-in. To set up
* SMS MFA, users will need help from an administrator to add a phone number to their account and then call
* InitiateAuth again to restart sign-in.
*
AdminInitiateAuth response if you must pass another challenge.
*
* MFA_SETUP: If MFA is required, users who don't have at least one of the MFA methods set up
* are presented with an MFA_SETUP challenge. The user must set up at least one MFA type to
* continue to authenticate.
*
* SELECT_MFA_TYPE: Selects the MFA type. Valid MFA options are SMS_MFA for text
* SMS MFA, and SOFTWARE_TOKEN_MFA for time-based one-time password (TOTP) software token MFA.
*
* SMS_MFA: Next challenge is to supply an SMS_MFA_CODE, delivered via SMS.
*
* PASSWORD_VERIFIER: Next challenge is to supply PASSWORD_CLAIM_SIGNATURE,
* PASSWORD_CLAIM_SECRET_BLOCK, and TIMESTAMP after the client-side SRP
* calculations.
*
* CUSTOM_CHALLENGE: This is returned if your custom authentication flow determines that the
* user should pass another challenge before tokens are issued.
*
* DEVICE_SRP_AUTH: If device tracking was activated in your user pool and the previous
* challenges were passed, this challenge is returned so that Amazon Cognito can start tracking this device.
*
* DEVICE_PASSWORD_VERIFIER: Similar to PASSWORD_VERIFIER, but for devices only.
*
* ADMIN_NO_SRP_AUTH: This is returned if you must authenticate with USERNAME and
* PASSWORD directly. An app client must be enabled to use this flow.
*
* NEW_PASSWORD_REQUIRED: For users who are required to change their passwords after successful
* first login. Respond to this challenge with NEW_PASSWORD and any required attributes that
* Amazon Cognito returned in the requiredAttributes parameter. You can also set values for
* attributes that aren't required by your user pool and that your app client can write. For more
* information, see AdminRespondToAuthChallenge.
*
* In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that
* already has a value. In AdminRespondToAuthChallenge, set a value for any keys that Amazon
* Cognito returned in the requiredAttributes parameter, then use the
* AdminUpdateUserAttributes API operation to modify the value of any additional attributes.
*
* MFA_SETUP: For users who are required to set up an MFA factor before they can sign in. The
* MFA types activated for the user pool will be listed in the challenge parameters
* MFA_CAN_SETUP value.
*
* To set up software token MFA, use the session returned here from InitiateAuth as an input to
* AssociateSoftwareToken, and use the session returned by VerifySoftwareToken as
* an input to RespondToAuthChallenge with challenge name MFA_SETUP to complete
* sign-in. To set up SMS MFA, users will need help from an administrator to add a phone number to their
* account and then call InitiateAuth again to restart sign-in.
*
* The name of the challenge that you're responding to with this call. This is returned in the
* AdminInitiateAuth response if you must pass another challenge.
*
* MFA_SETUP: If MFA is required, users who don't have at least one of the MFA methods set up are
* presented with an MFA_SETUP challenge. The user must set up at least one MFA type to continue to
* authenticate.
*
* SELECT_MFA_TYPE: Selects the MFA type. Valid MFA options are SMS_MFA for text SMS MFA,
* and SOFTWARE_TOKEN_MFA for time-based one-time password (TOTP) software token MFA.
*
* SMS_MFA: Next challenge is to supply an SMS_MFA_CODE, delivered via SMS.
*
* PASSWORD_VERIFIER: Next challenge is to supply PASSWORD_CLAIM_SIGNATURE,
* PASSWORD_CLAIM_SECRET_BLOCK, and TIMESTAMP after the client-side SRP calculations.
*
* CUSTOM_CHALLENGE: This is returned if your custom authentication flow determines that the user
* should pass another challenge before tokens are issued.
*
* DEVICE_SRP_AUTH: If device tracking was activated in your user pool and the previous challenges were
* passed, this challenge is returned so that Amazon Cognito can start tracking this device.
*
* DEVICE_PASSWORD_VERIFIER: Similar to PASSWORD_VERIFIER, but for devices only.
*
* ADMIN_NO_SRP_AUTH: This is returned if you must authenticate with USERNAME and
* PASSWORD directly. An app client must be enabled to use this flow.
*
* NEW_PASSWORD_REQUIRED: For users who are required to change their passwords after successful first
* login. Respond to this challenge with NEW_PASSWORD and any required attributes that Amazon Cognito
* returned in the requiredAttributes parameter. You can also set values for attributes that aren't
* required by your user pool and that your app client can write. For more information, see AdminRespondToAuthChallenge.
*
* In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already
* has a value. In AdminRespondToAuthChallenge, set a value for any keys that Amazon Cognito returned
* in the requiredAttributes parameter, then use the AdminUpdateUserAttributes API
* operation to modify the value of any additional attributes.
*
* MFA_SETUP: For users who are required to set up an MFA factor before they can sign in. The MFA types
* activated for the user pool will be listed in the challenge parameters MFA_CAN_SETUP value.
*
* To set up software token MFA, use the session returned here from InitiateAuth as an input to
* AssociateSoftwareToken, and use the session returned by VerifySoftwareToken as an input
* to RespondToAuthChallenge with challenge name MFA_SETUP to complete sign-in. To set up
* SMS MFA, users will need help from an administrator to add a phone number to their account and then call
* InitiateAuth again to restart sign-in.
*
AdminInitiateAuth response if you must pass another challenge.
*
* MFA_SETUP: If MFA is required, users who don't have at least one of the MFA methods set up
* are presented with an MFA_SETUP challenge. The user must set up at least one MFA type to
* continue to authenticate.
*
* SELECT_MFA_TYPE: Selects the MFA type. Valid MFA options are SMS_MFA for text
* SMS MFA, and SOFTWARE_TOKEN_MFA for time-based one-time password (TOTP) software token MFA.
*
* SMS_MFA: Next challenge is to supply an SMS_MFA_CODE, delivered via SMS.
*
* PASSWORD_VERIFIER: Next challenge is to supply PASSWORD_CLAIM_SIGNATURE,
* PASSWORD_CLAIM_SECRET_BLOCK, and TIMESTAMP after the client-side SRP
* calculations.
*
* CUSTOM_CHALLENGE: This is returned if your custom authentication flow determines that the
* user should pass another challenge before tokens are issued.
*
* DEVICE_SRP_AUTH: If device tracking was activated in your user pool and the previous
* challenges were passed, this challenge is returned so that Amazon Cognito can start tracking this device.
*
* DEVICE_PASSWORD_VERIFIER: Similar to PASSWORD_VERIFIER, but for devices only.
*
* ADMIN_NO_SRP_AUTH: This is returned if you must authenticate with USERNAME and
* PASSWORD directly. An app client must be enabled to use this flow.
*
* NEW_PASSWORD_REQUIRED: For users who are required to change their passwords after successful
* first login. Respond to this challenge with NEW_PASSWORD and any required attributes that
* Amazon Cognito returned in the requiredAttributes parameter. You can also set values for
* attributes that aren't required by your user pool and that your app client can write. For more
* information, see AdminRespondToAuthChallenge.
*
* In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that
* already has a value. In AdminRespondToAuthChallenge, set a value for any keys that Amazon
* Cognito returned in the requiredAttributes parameter, then use the
* AdminUpdateUserAttributes API operation to modify the value of any additional attributes.
*
* MFA_SETUP: For users who are required to set up an MFA factor before they can sign in. The
* MFA types activated for the user pool will be listed in the challenge parameters
* MFA_CAN_SETUP value.
*
* To set up software token MFA, use the session returned here from InitiateAuth as an input to
* AssociateSoftwareToken, and use the session returned by VerifySoftwareToken as
* an input to RespondToAuthChallenge with challenge name MFA_SETUP to complete
* sign-in. To set up SMS MFA, users will need help from an administrator to add a phone number to their
* account and then call InitiateAuth again to restart sign-in.
*
* The session that should be passed both ways in challenge-response calls to the service. If
* AdminInitiateAuth or AdminRespondToAuthChallenge API call determines that the caller
* must pass another challenge, they return a session with other challenge parameters. This session should be passed
* as it is to the next AdminRespondToAuthChallenge API call.
*
AdminInitiateAuth or AdminRespondToAuthChallenge API call determines that the
* caller must pass another challenge, they return a session with other challenge parameters. This session
* should be passed as it is to the next AdminRespondToAuthChallenge API call.
*/
public void setSession(String session) {
this.session = session;
}
/**
*
* The session that should be passed both ways in challenge-response calls to the service. If
* AdminInitiateAuth or AdminRespondToAuthChallenge API call determines that the caller
* must pass another challenge, they return a session with other challenge parameters. This session should be passed
* as it is to the next AdminRespondToAuthChallenge API call.
*
AdminInitiateAuth or AdminRespondToAuthChallenge API call determines that the
* caller must pass another challenge, they return a session with other challenge parameters. This session
* should be passed as it is to the next AdminRespondToAuthChallenge API call.
*/
public String getSession() {
return this.session;
}
/**
*
* The session that should be passed both ways in challenge-response calls to the service. If
* AdminInitiateAuth or AdminRespondToAuthChallenge API call determines that the caller
* must pass another challenge, they return a session with other challenge parameters. This session should be passed
* as it is to the next AdminRespondToAuthChallenge API call.
*
AdminInitiateAuth or AdminRespondToAuthChallenge API call determines that the
* caller must pass another challenge, they return a session with other challenge parameters. This session
* should be passed as it is to the next AdminRespondToAuthChallenge API call.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public AdminInitiateAuthResult withSession(String session) {
setSession(session);
return this;
}
/**
*
* The challenge parameters. These are returned to you in the AdminInitiateAuth response if you must
* pass another challenge. The responses in this parameter should be used to compute inputs to the next call (
* AdminRespondToAuthChallenge).
*
* All challenges require USERNAME and SECRET_HASH (if applicable).
*
* The value of the USER_ID_FOR_SRP attribute is the user's actual username, not an alias (such as
* email address or phone number), even if you specified an alias in your call to AdminInitiateAuth.
* This happens because, in the AdminRespondToAuthChallenge API ChallengeResponses, the
* USERNAME attribute can't be an alias.
*
AdminInitiateAuth response if you
* must pass another challenge. The responses in this parameter should be used to compute inputs to the next
* call (AdminRespondToAuthChallenge).
*
* All challenges require USERNAME and SECRET_HASH (if applicable).
*
* The value of the
* The challenge parameters. These are returned to you in the
* All challenges require
* The value of the USER_ID_FOR_SRP attribute is the user's actual username, not an alias (such
* as email address or phone number), even if you specified an alias in your call to
* AdminInitiateAuth. This happens because, in the AdminRespondToAuthChallenge API
* ChallengeResponses, the USERNAME attribute can't be an alias.
*/
public java.util.MapAdminInitiateAuth response if you must
* pass another challenge. The responses in this parameter should be used to compute inputs to the next call (
* AdminRespondToAuthChallenge).
* USERNAME and SECRET_HASH (if applicable).
* USER_ID_FOR_SRP attribute is the user's actual username, not an alias (such as
* email address or phone number), even if you specified an alias in your call to AdminInitiateAuth.
* This happens because, in the AdminRespondToAuthChallenge API ChallengeResponses, the
* USERNAME attribute can't be an alias.
* AdminInitiateAuth response if you
* must pass another challenge. The responses in this parameter should be used to compute inputs to the next
* call (AdminRespondToAuthChallenge).
* All challenges require USERNAME and SECRET_HASH (if applicable).
*
* The value of the
* The challenge parameters. These are returned to you in the
* All challenges require
* The value of the USER_ID_FOR_SRP attribute is the user's actual username, not an alias (such
* as email address or phone number), even if you specified an alias in your call to
* AdminInitiateAuth. This happens because, in the AdminRespondToAuthChallenge API
* ChallengeResponses, the USERNAME attribute can't be an alias.
*/
public void setChallengeParameters(java.util.MapAdminInitiateAuth response if you must
* pass another challenge. The responses in this parameter should be used to compute inputs to the next call (
* AdminRespondToAuthChallenge).
* USERNAME and SECRET_HASH (if applicable).
* USER_ID_FOR_SRP attribute is the user's actual username, not an alias (such as
* email address or phone number), even if you specified an alias in your call to AdminInitiateAuth.
* This happens because, in the AdminRespondToAuthChallenge API ChallengeResponses, the
* USERNAME attribute can't be an alias.
* AdminInitiateAuth response if you
* must pass another challenge. The responses in this parameter should be used to compute inputs to the next
* call (AdminRespondToAuthChallenge).
* All challenges require USERNAME and SECRET_HASH (if applicable).
*
* The value of the
* The result of the authentication response. This is only returned if the caller doesn't need to pass another
* challenge. If the caller does need to pass another challenge before it gets tokens,
* The result of the authentication response. This is only returned if the caller doesn't need to pass another
* challenge. If the caller does need to pass another challenge before it gets tokens,
* The result of the authentication response. This is only returned if the caller doesn't need to pass another
* challenge. If the caller does need to pass another challenge before it gets tokens, USER_ID_FOR_SRP attribute is the user's actual username, not an alias (such
* as email address or phone number), even if you specified an alias in your call to
* AdminInitiateAuth. This happens because, in the AdminRespondToAuthChallenge API
* ChallengeResponses, the USERNAME attribute can't be an alias.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public AdminInitiateAuthResult withChallengeParameters(java.util.MapChallengeName,
* ChallengeParameters, and Session are returned.
* ChallengeName, ChallengeParameters, and Session are returned.
*/
public void setAuthenticationResult(AuthenticationResultType authenticationResult) {
this.authenticationResult = authenticationResult;
}
/**
* ChallengeName,
* ChallengeParameters, and Session are returned.
* ChallengeName, ChallengeParameters, and Session are returned.
*/
public AuthenticationResultType getAuthenticationResult() {
return this.authenticationResult;
}
/**
* ChallengeName,
* ChallengeParameters, and Session are returned.
* ChallengeName, ChallengeParameters, and Session are returned.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public AdminInitiateAuthResult withAuthenticationResult(AuthenticationResultType authenticationResult) {
setAuthenticationResult(authenticationResult);
return this;
}
/**
* Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be
* redacted from this string using a placeholder value.
*
* @return A string representation of this object.
*
* @see java.lang.Object#toString()
*/
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append("{");
if (getChallengeName() != null)
sb.append("ChallengeName: ").append(getChallengeName()).append(",");
if (getSession() != null)
sb.append("Session: ").append("***Sensitive Data Redacted***").append(",");
if (getChallengeParameters() != null)
sb.append("ChallengeParameters: ").append(getChallengeParameters()).append(",");
if (getAuthenticationResult() != null)
sb.append("AuthenticationResult: ").append(getAuthenticationResult());
sb.append("}");
return sb.toString();
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (obj instanceof AdminInitiateAuthResult == false)
return false;
AdminInitiateAuthResult other = (AdminInitiateAuthResult) obj;
if (other.getChallengeName() == null ^ this.getChallengeName() == null)
return false;
if (other.getChallengeName() != null && other.getChallengeName().equals(this.getChallengeName()) == false)
return false;
if (other.getSession() == null ^ this.getSession() == null)
return false;
if (other.getSession() != null && other.getSession().equals(this.getSession()) == false)
return false;
if (other.getChallengeParameters() == null ^ this.getChallengeParameters() == null)
return false;
if (other.getChallengeParameters() != null && other.getChallengeParameters().equals(this.getChallengeParameters()) == false)
return false;
if (other.getAuthenticationResult() == null ^ this.getAuthenticationResult() == null)
return false;
if (other.getAuthenticationResult() != null && other.getAuthenticationResult().equals(this.getAuthenticationResult()) == false)
return false;
return true;
}
@Override
public int hashCode() {
final int prime = 31;
int hashCode = 1;
hashCode = prime * hashCode + ((getChallengeName() == null) ? 0 : getChallengeName().hashCode());
hashCode = prime * hashCode + ((getSession() == null) ? 0 : getSession().hashCode());
hashCode = prime * hashCode + ((getChallengeParameters() == null) ? 0 : getChallengeParameters().hashCode());
hashCode = prime * hashCode + ((getAuthenticationResult() == null) ? 0 : getAuthenticationResult().hashCode());
return hashCode;
}
@Override
public AdminInitiateAuthResult clone() {
try {
return (AdminInitiateAuthResult) super.clone();
} catch (CloneNotSupportedException e) {
throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e);
}
}
}