javascript - AWS Lambda 到 AWS Lambda 权限
问题描述
尝试使用 AWS 文档中的 lambda.invoke 方法。但是,在尝试对此进行测试时,我遇到了权限问题。
无论如何可以指导我如何设置这些权限?
var aws = require('aws-sdk');
var lambda = new aws.Lambda({
region: 'us-west-2' //change to your region
});
lambda.invoke({
FunctionName: 'lambda_function',
Payload: JSON.stringify('hello world') // pass params
}, function(error, data) {
if (error) {
context.done('error', error);
}
if(data.Payload){
context.succeed(data.Payload)
}
});
使用这些文档http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/Lambda.html
解决方案
您需要向调用者 Lambda 函数提供调用另一个函数的权限,您的调用
者函数将需要一个 IAM 策略,例如 -
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Lambda permission",
"Action": [
"lambda:InvokeFunction"
],
"Effect": "Allow",
"Resource": "arn:aws:lambda:awsRegion:awsAccountId:function:functionName"
}
]
}
如果您从本地调用您的函数,
您的 AWS 凭证将需要相同的访问权限
推荐阅读
- c++ - Boost Xpressive - 字段“m_rx”的类型不完整
- laravel - URL 没有从 Laravel 5 中的路由获取用户名
- android - 已经表示权限还是异常,java.lang.SecurityException
- javascript - 是否有任何代理方法允许对象获取默认属性
- php - PHP脚本未将HTML表单数据提交到数据库
- linux - 在 Ubuntu 上更改默认 python3 或卸载一个安装
- reactjs - 如何在 TabBar 中添加图标 (createMaterialTopTabNavigator) ReactNative
- angular - 打开其他垫子菜单时如何隐藏打开的垫子菜单
- android - Flutter 应用抛出 Http Exception 并立即崩溃
- php - 从动态产品页面中选择产品并将其传递到其他页面