Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services AWS转换数据进入物联网分析管道时出现Lambda函数权限错误_Amazon Web Services_Aws Lambda_Aws Iam_Aws Iot Analytics - Fatal编程技术网

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

Amazon web services AWS转换数据进入物联网分析管道时出现Lambda函数权限错误,amazon-web-services,aws-lambda,aws-iam,aws-iot-analytics,Amazon Web Services,Aws Lambda,Aws Iam,Aws Iot Analytics,我在IoT Core中有一条规则,它将消息发送到IoT分析渠道,然后将数据传递到分析管道,但在管道中,我想利用管道活动来转换消息,特别是: 使用Lambda函数活动转换消息 我的Lambda函数返回一个它从DynamoDB检索的值,我已经在AWS Lambda中测试了Lambda,它按照它应该的方式执行和工作,但是,一旦我单击更新预览,它现在应该向我显示转换后的消息,我得到以下错误: 我们无法运行管道活动。错误:权限不足,无法执行Lambda函数;丢弃消息,丢弃的消息数:1,functionrn

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

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

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

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

  • AmazondynamodFullAccess
  • AWSIoTAnalyticsFullAccess
  • AWSIOTFULL访问

是否存在我在IAM角色中没有的阻止Lambda执行我需要的操作的策略?

似乎您没有向Lambda功能提供权限,请确保您已授予IoT Analytics权限以调用Lambda功能

AWS CLI命令示例:

(一)

(二)


为便于参考,相关文档位于“Lambda活动”部分下。
aws lambda add-permission --function-name filter_to_cloudwatch --statement-id filter_to_cloudwatch_perms --principal iotanalytics.amazonaws.com --action lambda:InvokeFunction
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"