使用Terraform创建Lambda资源级策略后,AWS控制台未显示该策略
Lambda资源级策略在控制台不可见的原因
你遇到的问题核心原因是:这条权限策略被绑定到了Lambda别名上,而非函数本身,而Lambda控制台默认只展示函数根资源的权限策略。
具体细节:
- 你的Terraform代码里,
aws_lambda_permission资源指定了qualifier = aws_lambda_alias.latest.name,这个参数会把权限策略附加到latest-version这个别名上,而不是函数的主资源。 - Lambda控制台的「资源级策略」页面,默认仅显示未指定版本/别名的函数根资源的权限,不会展示绑定到特定版本或别名上的策略。
验证方法:
你可以通过AWS CLI命令查看别名上的权限策略,确认它确实存在:
aws lambda get-policy --function-name <你的Lambda函数名> --qualifier latest-version
可选调整方案:
- 如果希望在控制台看到这条权限,删除
aws_lambda_permission里的qualifier参数,让权限绑定到函数本身。 - 如果业务需求必须把权限绑定到别名上,就只能通过CLI、AWS SDK或Terraform状态来查看和管理这条策略。
内容的提问来源于stack exchange,提问作者Alex
相关产品推荐
相关产品推荐

