Cognito USER_SRP_AUTHENTICATION

Ari*_*aza 5 amazon-web-services node.js

在 AWS Cognito 文档中,http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/CognitoIdentityServiceProvider.html#initiateAuth-property

支持的身份验证流程之一是 USER_SRP_AUTH。当我调用itiateAuth()时,我得到

InvalidParameterException:缺少所需参数 SRP_A 错误。

该文档没有提及如何获取/生成该方法所需的 SRP_A。在哪里可以找到如何使用此身份验证流程?

提前致谢!

Mat*_*att -1

我对“AdminInitiateAuth”方法有类似的问题。我可以通过在用户池中启用 ADMIN_NO_SRP_AUTH 来让我的工作正常工作。转到用户池 > 应用 > 显示详细信息,然后选中“启用基于服务器的身份验证的登录 API (ADMIN_NO_SRP_AUTH)”复选框。完成后,我可以使用 AuthFlowType.ADMIN_NO_SRP_AUTH。

// example from a java implementation... 
AdminInitiateAuthRequest request = new AdminInitiateAuthRequest();
request.withClientId(CLIENT_APP_ID); // clinet id assigned in the userpool
request.withUserPoolId(USER_POOL_ID); // the id of the user pool 
request.addAuthParametersEntry("USERNAME", userId);
request.addAuthParametersEntry("PASSWORD", pwd);
request.withAuthFlow(AuthFlowType.ADMIN_NO_SRP_AUTH); 
// HAVE TO ENABLE THIS WORKFLOW ON THE USER POOL!
// You may be able to just set the workflow to AuthFlowType.USER_SRP_AUTH if you don't use the AdminInitiateRequest

// initiate the auth request
AdminInitiateAuthResult result = identityUserPoolProviderClient.adminInitiateAuth(request);
Run Code Online (Sandbox Code Playgroud)