in src/Amazon.Extensions.CognitoAuthentication/CognitoUserAuthentication.cs [246:268]
public virtual async Task<AuthFlowResponse> StartWithCustomAuthAsync(InitiateCustomAuthRequest customRequest, CancellationToken cancellationToken)
{
InitiateAuthRequest authRequest = new InitiateAuthRequest()
{
AuthFlow = AuthFlowType.CUSTOM_AUTH,
AuthParameters = new Dictionary<string, string>(customRequest.AuthParameters),
ClientId = ClientID,
ClientMetadata = new Dictionary<string, string>(customRequest.ClientMetadata),
AnalyticsMetadata = customRequest.AnalyticsMetadata,
UserContextData = customRequest.UserContextData
};
InitiateAuthResponse initiateResponse = await Provider.InitiateAuthAsync(authRequest, cancellationToken).ConfigureAwait(false);
UpdateUsernameAndSecretHash(initiateResponse.ChallengeParameters);
UpdateSessionIfAuthenticationComplete(initiateResponse.ChallengeName, initiateResponse.AuthenticationResult);
return new AuthFlowResponse(initiateResponse.Session,
initiateResponse.AuthenticationResult,
initiateResponse.ChallengeName,
initiateResponse.ChallengeParameters,
new Dictionary<string, string>(initiateResponse.ResponseMetadata.Metadata ?? new Dictionary<string, string>()));
}