AWS转换进入物联网分析管道的数据时出现Lambda函数权限错误



我在IoT Core中有一条规则,它将消息发送到IoT Analytics通道,然后将数据传递到Analytics管道,但是,在管道中,我想利用管道活动来转换消息,特别是:使用Lambda函数活动转换消息。

我的Lambda函数返回一个从DynamoDB中检索的值,我已经在AWS Lambda中测试了Lambda,它执行和工作正常,但是,一旦我点击更新预览,它现在应该向我显示转换后的消息,我就会收到以下错误:

我们无法运行管道活动。错误:由于权限不足,无法执行Lambda函数;丢弃消息,丢弃的消息数:1,函数arn:an:aws:lambda:eu-west-1:x:function:y

与Lambda y函数关联的IAM角色具有以下权限:

  • AmazonDynamoDBFullAccess
  • AWSIoTAnalyticsFullAccess
  • AWSIoTFullAccess

是否有我在IAM角色中没有的Lambda政策阻止它做我需要做的事情?

似乎您没有提供lambda函数的权限,请确保您已授予IoT Analytics调用lambda函数的权限

示例AWS CLI命令:

1)

aws lambda add-permission --function-name filter_to_cloudwatch --statement-id filter_to_cloudwatch_perms --principal iotanalytics.amazonaws.com --action lambda:InvokeFunction

2)

aws lambda add-permission --function-name LambdaForWeatherCorp --region us-east-1 --principal iot.amazonaws.com --source-arn arn:aws:iot:us-east-1:123456789012:rule/WeatherCorpRule --source-account 123456789012 --statement-id "unique_id" --action "lambda:InvokeFunction"

相关内容

  • 没有找到相关文章

最新更新