amazon-web-services - 您的函数的执行角色无权将结果发送到目标
问题描述
我想将消息从 lambda 函数发送到 SNS。当我尝试添加目的地“SNS”时,就会出现此错误。什么是 IAM 政策,我错过了?我添加了 AWSLambdaFullAccess 和 AmazonSNSFullAccess IAM 策略。
解决方案
问题不在于 lambda 执行策略,而是您(您的IAM 用户)没有执行权限iam:AttachRolePolicy
。
原因是 lambda 会将以下服务角色策略添加到您的函数执行角色中,而不管您是否已经拥有该角色AmazonSNSFullAccess
:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "sns:Publish",
"Resource": "arn:aws:sns:region:xxxx:testTopic"
}
]
}
您必须为登录控制台时使用的 IAM 用户添加缺少的权限。
推荐阅读
- kotlin - 如何抑制协程流程中的错误,使流程无法完成?
- mysql - 摆脱 MySQL 中的 %C2%92 个字符
- javascript - 根据多个变量(范围、增量、层级)计算价格
- flutter - 文本中的空格 - Flutter
- c# - 为不同的页面添加水印
- ocr - OCR 字段识别
- sql-server - 逗号在 sqlalchemy 中使用 mssql+pyodbc 指定端口号
- c# - dotnet 5 CLI 在 centos 8 上不提供 https
- ruby-on-rails - 在其他两列之间创建一个新列(迁移)?
- mysql - DISTINCT 在 MYSQL 和 POSTGRESQL 中的工作方式不同