@Generated(value="software.amazon.awssdk:codegen") public final class AdminRespondToAuthChallengeRequest extends CognitoIdentityProviderRequest implements ToCopyableBuilder<AdminRespondToAuthChallengeRequest.Builder,AdminRespondToAuthChallengeRequest>
The request to respond to the authentication challenge, as an administrator.
Modifier and Type | Class and Description |
---|---|
static interface |
AdminRespondToAuthChallengeRequest.Builder |
Modifier and Type | Method and Description |
---|---|
AnalyticsMetadataType |
analyticsMetadata()
The analytics metadata for collecting Amazon Pinpoint metrics for
AdminRespondToAuthChallenge calls. |
static AdminRespondToAuthChallengeRequest.Builder |
builder() |
ChallengeNameType |
challengeName()
The challenge name.
|
String |
challengeNameAsString()
The challenge name.
|
Map<String,String> |
challengeResponses()
The challenge responses.
|
String |
clientId()
The app client ID.
|
Map<String,String> |
clientMetadata()
A map of custom key-value pairs that you can provide as input for any custom workflows that this action triggers.
|
ContextDataType |
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.
|
boolean |
equals(Object obj) |
boolean |
equalsBySdkFields(Object obj) |
<T> Optional<T> |
getValueForField(String fieldName,
Class<T> clazz) |
boolean |
hasChallengeResponses()
Returns true if the ChallengeResponses property was specified by the sender (it may be empty), or false if the
sender did not specify the value (it will be empty).
|
boolean |
hasClientMetadata()
Returns true if the ClientMetadata property was specified by the sender (it may be empty), or false if the sender
did not specify the value (it will be empty).
|
int |
hashCode() |
List<SdkField<?>> |
sdkFields() |
static Class<? extends AdminRespondToAuthChallengeRequest.Builder> |
serializableBuilderClass() |
String |
session()
The session which should be passed both ways in challenge-response calls to the service.
|
AdminRespondToAuthChallengeRequest.Builder |
toBuilder() |
String |
toString()
Returns a string representation of this object.
|
String |
userPoolId()
The ID of the Amazon Cognito user pool.
|
overrideConfiguration
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
copy
public final String userPoolId()
The ID of the Amazon Cognito user pool.
public final String clientId()
The app client ID.
public final ChallengeNameType challengeName()
The challenge name. For more information, see AdminInitiateAuth.
If the service returns an enum value that is not available in the current SDK version, challengeName
will return ChallengeNameType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available
from challengeNameAsString()
.
ChallengeNameType
public final String challengeNameAsString()
The challenge name. For more information, see AdminInitiateAuth.
If the service returns an enum value that is not available in the current SDK version, challengeName
will return ChallengeNameType.UNKNOWN_TO_SDK_VERSION
. The raw value returned by the service is available
from challengeNameAsString()
.
ChallengeNameType
public final boolean hasChallengeResponses()
public final Map<String,String> challengeResponses()
The challenge responses. These are inputs corresponding to the value of ChallengeName
, for example:
SMS_MFA
: SMS_MFA_CODE
, USERNAME
, SECRET_HASH
(if app client
is configured with client secret).
PASSWORD_VERIFIER
: PASSWORD_CLAIM_SIGNATURE
, PASSWORD_CLAIM_SECRET_BLOCK
,
TIMESTAMP
, USERNAME
, SECRET_HASH
(if app client is configured with client
secret).
ADMIN_NO_SRP_AUTH
: PASSWORD
, USERNAME
, SECRET_HASH
(if app
client is configured with client secret).
NEW_PASSWORD_REQUIRED
: NEW_PASSWORD
, any other required attributes,
USERNAME
, SECRET_HASH
(if app client is configured with client secret).
MFA_SETUP
requires USERNAME
, plus you need to use the session value returned by
VerifySoftwareToken
in the Session
parameter.
The value of the USERNAME
attribute must be the user's actual username, not an alias (such as email
address or phone number). To make this easier, the AdminInitiateAuth
response includes the actual
username value in the USERNAMEUSER_ID_FOR_SRP
attribute, even if you specified an alias in your call
to AdminInitiateAuth
.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
You can use hasChallengeResponses()
to see if a value was sent in this field.
ChallengeName
, for
example:
SMS_MFA
: SMS_MFA_CODE
, USERNAME
, SECRET_HASH
(if app
client is configured with client secret).
PASSWORD_VERIFIER
: PASSWORD_CLAIM_SIGNATURE
,
PASSWORD_CLAIM_SECRET_BLOCK
, TIMESTAMP
, USERNAME
,
SECRET_HASH
(if app client is configured with client secret).
ADMIN_NO_SRP_AUTH
: PASSWORD
, USERNAME
, SECRET_HASH
(if app client is configured with client secret).
NEW_PASSWORD_REQUIRED
: NEW_PASSWORD
, any other required attributes,
USERNAME
, SECRET_HASH
(if app client is configured with client secret).
MFA_SETUP
requires USERNAME
, plus you need to use the session value returned by
VerifySoftwareToken
in the Session
parameter.
The value of the USERNAME
attribute must be the user's actual username, not an alias (such
as email address or phone number). To make this easier, the AdminInitiateAuth
response
includes the actual username value in the USERNAMEUSER_ID_FOR_SRP
attribute, even if you
specified an alias in your call to AdminInitiateAuth
.
public final String session()
The session which should be passed both ways in challenge-response calls to the service. If
InitiateAuth
or RespondToAuthChallenge
API call determines that the caller needs to go
through another challenge, they return a session with other challenge parameters. This session should be passed
as it is to the next RespondToAuthChallenge
API call.
InitiateAuth
or RespondToAuthChallenge
API call determines that the caller
needs to go through another challenge, they return a session with other challenge parameters. This
session should be passed as it is to the next RespondToAuthChallenge
API call.public final AnalyticsMetadataType analyticsMetadata()
The analytics metadata for collecting Amazon Pinpoint metrics for AdminRespondToAuthChallenge
calls.
AdminRespondToAuthChallenge
calls.public final ContextDataType 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.
public final boolean hasClientMetadata()
public final Map<String,String> clientMetadata()
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 AWS Lambda functions to user pool triggers. When you use the
AdminRespondToAuthChallenge API action, Amazon Cognito invokes any functions that are assigned to the following
triggers: pre sign-up, custom message, post authentication, user migration, pre
token generation, define auth challenge, create auth challenge, and verify auth challenge
response. 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 AdminRespondToAuthChallenge request. In your function code
in AWS 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.
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.
Attempts to modify the collection returned by this method will result in an UnsupportedOperationException.
You can use hasClientMetadata()
to see if a value was sent in this field.
You create custom workflows by assigning AWS Lambda functions to user pool triggers. When you use the
AdminRespondToAuthChallenge API action, Amazon Cognito invokes any functions that are assigned to the
following triggers: pre sign-up, custom message, post authentication, user
migration, pre token generation, define auth challenge, create auth challenge,
and verify auth challenge response. 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
AdminRespondToAuthChallenge request. In your function code in AWS 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.
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.
public AdminRespondToAuthChallengeRequest.Builder toBuilder()
toBuilder
in interface ToCopyableBuilder<AdminRespondToAuthChallengeRequest.Builder,AdminRespondToAuthChallengeRequest>
toBuilder
in class CognitoIdentityProviderRequest
public static AdminRespondToAuthChallengeRequest.Builder builder()
public static Class<? extends AdminRespondToAuthChallengeRequest.Builder> serializableBuilderClass()
public final int hashCode()
hashCode
in class AwsRequest
public final boolean equals(Object obj)
equals
in class AwsRequest
public final boolean equalsBySdkFields(Object obj)
equalsBySdkFields
in interface SdkPojo
public final String toString()
public final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz)
getValueForField
in class SdkRequest
Copyright © 2021. All rights reserved.