Amazon web services AWS lambda以编程方式设置函数访问策略
我正在尝试使用设置用户特定的lambda策略。有人能告诉我为什么这个只访问一个lambda的资源规范是错误的吗Amazon web services AWS lambda以编程方式设置函数访问策略,amazon-web-services,aws-lambda,lambda-authorizer,aws-policies,Amazon Web Services,Aws Lambda,Lambda Authorizer,Aws Policies,我正在尝试使用设置用户特定的lambda策略。有人能告诉我为什么这个只访问一个lambda的资源规范是错误的吗 resource = "arn:aws:region:*:*:function:orderinputapi-alpha-writeMe"; 当我使用: resource="*" 它工作得很好(用户可以完全访问所有lambda),但是当我试图将访问限制为只允许一个lambda函数时,当我尝试访问它时,会得到“用户无权访问资源”。我确认函数是la
resource = "arn:aws:region:*:*:function:orderinputapi-alpha-writeMe";
当我使用:
resource="*"
它工作得很好(用户可以完全访问所有lambda),但是当我试图将访问限制为只允许一个lambda函数时,当我尝试访问它时,会得到“用户无权访问资源”。我确认函数是lambda的确切名称
由我的代码创建的完整策略声明是:
{ Action: 'execute-api:Invoke',
Effect: 'Allow',
Resource:'arn:aws:region:*:*:function:orderinputapi-alpha-writeMe' }
您的ARN有一个错误: 而不是
arn:aws:region:::::::::::::::function:orderinputapi alpha writeMe
,它应该是arn:aws:lambda::::::::::::::function:orderinputapi alpha writeMe
此外,如果您为同一地区和帐户设置权限,只需删除*
,ARN将为:
arn:aws:lambda:::函数:orderinputapi alpha writeMe