Coe*_*ale 5 c# amazon-web-services amazon-cognito asp.net-core aws-cognito
我正在尝试在 asp.net Core 2 上登录用户服务器端
我已经注册了一个用户并通过验证链接进行了确认,但现在我正在努力将该用户登录到我的应用程序中。很遗憾,c# 的文档太差了!
用户池配置:
应用程序客户端:为基于服务器的身份验证启用登录 API (ADMIN_NO_SRP_AUTH) - 选中
这是代码:
public async Task<bool> SignInUserAsync(CognitoUser user)
{
var provider = new AmazonCognitoIdentityProviderClient(new AnonymousAWSCredentials(),
RegionEndpoint.GetBySystemName("eu-west-2"));
try
{
var authReq = new AdminInitiateAuthRequest
{
AuthFlow = AuthFlowType.ADMIN_NO_SRP_AUTH,
UserPoolId = _poolId,
ClientId = _clientId
};
authReq.AuthParameters.Add("USERNAME", user.Email);
authReq.AuthParameters.Add("PASSWORD", user.Password);
AdminInitiateAuthResponse authResp = await provider.AdminInitiateAuthAsync(authReq);
return true;
}
catch
{
return false;
}
}
Run Code Online (Sandbox Code Playgroud)
返回的错误是Missing Authentication Token但我无法确定需要设置/已给我的令牌的位置。
是我的AmazonCognitoIdentityProviderClient设置还是应用程序客户端设置下的
AWS > User Pools > App Intergration > App Client Settings?
AdminInitiateAuth API 旨在从有权访问开发人员 IAM 凭证的后端调用。由于您尝试使用 来调用它AnonymousAWSCredentials,因此您会收到Missing Authentication Token错误。
Cognito 用户池尚不具备对 C# 的本机支持。您应该使用托管身份验证页面而不是本机 API 调用将 Cognito 用户池集成到 C# 应用程序中。
| 归档时间: |
|
| 查看次数: |
4495 次 |
| 最近记录: |