Example usage for com.amazonaws.services.cognitoidp.model InitiateAuthRequest setClientMetadata

List of usage examples for com.amazonaws.services.cognitoidp.model InitiateAuthRequest setClientMetadata

Introduction

In this page you can find the example usage for com.amazonaws.services.cognitoidp.model InitiateAuthRequest setClientMetadata.

Prototype


public void setClientMetadata(java.util.Map<String, String> clientMetadata) 

Source Link

Document

A map of custom key-value pairs that you can provide as input for certain custom workflows that this action triggers.

Usage

From source file:io.fineo.client.auth.cognito.CognitoUser.java

License:Open Source License

/**
 * Creates a authentication request to start authentication with user SRP verification.
 *
 * @param authenticationDetails     REQUIRED: {@link AuthenticationDetails}, contains details for
 *                                  user SRP authentication.
 * @param authenticationHelper      REQUIRED: Internal helper class for SRP calculations.
 * @return {@link InitiateAuthRequest}, request to start with the user SRP authentication.
 *//*from  w  w w.  ja v a 2 s . c o m*/
private InitiateAuthRequest initiateUserSrpAuthRequest(AuthenticationDetails authenticationDetails,
        AuthenticationHelper authenticationHelper) {
    userId = authenticationDetails.getUserId();
    InitiateAuthRequest initiateAuthRequest = new InitiateAuthRequest();
    initiateAuthRequest.setAuthFlow("USER_SRP_AUTH");
    initiateAuthRequest.setClientId(clientId);
    initiateAuthRequest.addAuthParametersEntry("SECRET_HASH",
            CognitoSecretHash.getSecretHash(userId, clientId, clientSecret));
    initiateAuthRequest.addAuthParametersEntry("USERNAME", authenticationDetails.getUserId());
    initiateAuthRequest.addAuthParametersEntry("SRP_A", authenticationHelper.getA().toString(16));
    setDeviceAuthKey(initiateAuthRequest, authenticationDetails.getUserId());
    if (authenticationDetails.getValidationData() != null
            && authenticationDetails.getValidationData().size() > 0) {
        Map<String, String> userValidationData = new HashMap<String, String>();
        for (AttributeType attribute : authenticationDetails.getValidationData()) {
            userValidationData.put(attribute.getName(), attribute.getValue());
        }
        initiateAuthRequest.setClientMetadata(userValidationData);
    }
    return initiateAuthRequest;
}