使用Lambda创建AWS User Pool时遭遇权限授权错误咨询
解决Lambda创建Cognito User Pool的权限错误
你的Lambda执行角色没有被授予cognito-idp:CreateUserPool权限,这才导致调用Cognito创建用户池的API时被拒绝。按以下步骤修复:
找到Lambda的执行角色
打开Lambda控制台,找到你的目标函数,切换到「配置」标签页,在「权限」板块里找到「执行角色」,点击角色名称跳转到IAM控制台。添加权限策略
在IAM角色页面,切换到「权限」标签,点击「添加权限」→「创建内联策略」:- 选择「JSON」编辑模式,粘贴下面的策略代码:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "cognito-idp:CreateUserPool", "Resource": "*" } ] }- 给策略起个好记的名字(比如
Lambda-Cognito-CreatePool-Access),然后点击「创建策略」。
验证修复效果
回到你的Lambda函数,重新触发创建User Pool的逻辑,确认权限错误是否消失。
如果需要更严格的权限控制(比如只允许创建特定命名规则的用户池),可以把Resource字段改成具体的ARN格式,比如arn:aws:cognito-idp:us-east-1:123456789012:userpool/my-pool-*,不过普通场景下用*就足够了。
内容的提问来源于stack exchange,提问作者Andrew Haliem
相关产品推荐
相关产品推荐

