【发布时间】:2020-11-05 11:00:49
【问题描述】:
我正在尝试在我的 web 应用上设置受保护的路由。为此,我在我的用户池中创建了一个组Admins。我已将此组分配给 WebappAdmins 角色,其中包含自定义策略:
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": "webapp:*",
"Resource": "*"
}]
}
我如何——从 webapp——辨别登录的 CognitoUser 是否具有webapp:ViewUploadDocumentsPage 权限?由于属于Admins 组的所有CognitoUsers 都具有webapp:* 权限,因此如果我没记错的话,他们应该具有webapp:ViewUploadDocumentsPage 权限。我知道验证他们在 webapp 上的权限是不安全的,但这并不重要,因为我计划为 WebappAdmins 角色添加特定的 lambda 权限,以防止其他用户造成任何实际伤害。
我期待某种端点,我可以代表 CognitoUser 向其发出经过身份验证的发布请求,并将 webapp:ViewUploadDocumentsPage 传递到正文中。在我广泛的研究中,我没有发现任何暗示这一点的东西,所以我认为我错了。
我能否创建一个带有授权方的 API 网关,该授权方只接受来自 CognitoUsers 且具有 webapp:ViewUploadDocumentsPage 权限的请求?我真的不确定该怎么做。
【问题讨论】:
标签: amazon-web-services aws-api-gateway amazon-cognito amazon-iam aws-userpools