为何部分AWS服务要求请求者拥有IAM策略?以Lambda对接SNS为例
Lambda 对接 SNS 权限配置踩坑
- 问题场景:在Lambda与SNS集成时,我尝试配置SNS TopicPolicy,允许指定VPC CIDR段的请求向Topic发布消息,但配置后完全不生效,Lambda始终无法向SNS发送消息。
- 错误认知:我之前误以为SNS的操作权限限制是针对服务主体,而非实际发起请求的执行身份,但实际逻辑并非如此。
- 解决方法:最终通过创建一个拥有
SNS:Publish权限的IAM角色,并将该角色直接附加到Lambda函数上,问题得以解决,Lambda成功向SNS发送消息。 - 关键总结:
- 运行在VPC内的Lambda,其向SNS发起的请求是通过自身的IAM执行角色进行身份认证的,而非基于源IP地址
- 依赖SNS TopicPolicy的VPC CIDR白名单规则无法控制Lambda的请求权限,必须为Lambda配置对应权限的IAM角色
内容的提问来源于stack exchange,提问作者Casey
相关产品推荐
相关产品推荐

