C# 当您拥有所有权限时,在Cognito中获取用户不起作用
当我尝试在Amazon Web Services上的lambda中获取用户时:C# 当您拥有所有权限时,在Cognito中获取用户不起作用,c#,amazon-web-services,amazon-cognito,.net-core-2.0,C#,Amazon Web Services,Amazon Cognito,.net Core 2.0,当我尝试在Amazon Web Services上的lambda中获取用户时: var client = new AmazonCognitoIdentityProviderClient(); var user = await client.GetUserAsync(new GetUserRequest { AccessToken = request.AccessToken }); 我得到一个错误: 无法确定协议 Lambda与AmazonCongnitoPowerUser策略所附加的角色一起发
var client = new AmazonCognitoIdentityProviderClient();
var user = await client.GetUserAsync(new GetUserRequest { AccessToken = request.AccessToken });
我得到一个错误:
无法确定协议
Lambda与AmazonCongnitoPowerUser策略所附加的角色一起发布
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cognito-identity:*",
"cognito-idp:*",
"cognito-sync:*",
"iam:ListRoles",
"iam:ListOpenIdConnectProviders",
"sns:ListPlatformApplications"
],
"Resource": "*"
}
]
}
模式CognitoIDP:
允许采取任何行动,尤其是创建和删除用户时不会出现问题。只有得到不起作用
此外,该角色还授予管理员权限—对所有内容的完全访问权限。没用。怎么可能呢
Internet中有许多创建具有匿名权限的提供商的提示:
new AmazonCognitoIdentityProviderClient(new AnonymousAWSCredentials())
然后接收用户正在工作。但不能创建/删除用户,这是很自然的
通过显式设置密钥(accessKey、secretKey),获取用户也可以工作
问:如何从特定角色下获取用户而不必直接设置参数?我也遇到了这个问题。使用
.aws/credentials
中的凭据在我的本地计算机上运行良好。当我在elastic beanstalk中部署到docker容器时,我得到了附加了类似策略的相同错误