如何调用函数的AWS Lambda权限列表

时间:2016-06-13 09:39:46

标签: amazon-web-services aws-lambda

要允许AWS服务调用lambda函数,您需要应用权限。此权限的json可能看起来像这样:

{
    "FunctionName": "someFunction", 
    "StatementId": "1", 
    "Action": "lambda:InvokeFunction", 
    "Principal": "codecommit.amazonaws.com", 
    "SourceArn": "arn:aws:codecommit:us-east-1:80398EXAMPLE:MyDemoRepo", 
    "SourceAccount": "80398EXAMPLE"
}

以上摘自http://docs.aws.amazon.com/codecommit/latest/userguide/how-to-notify-lambda.html

使用命令行界面(cli)添加权限很容易。见http://docs.aws.amazon.com/cli/latest/reference/lambda/add-permission.html。并且可以使用http://docs.aws.amazon.com/cli/latest/reference/lambda/remove-permission.html

中的命令将其删除

无法找到的是列出现有权限的方法。我在Lambda和IAM GUI中随处可见。我在http://docs.aws.amazon.com/cli/latest/reference/lambda/index.html#cli-aws-lambda查看了Lambda的cli命令列表 - 似乎没有列出权限的命令。我还在http://docs.aws.amazon.com/cli/latest/reference/iam/index.html#cli-aws-iam看了一下iam的命令。什么都没有。

所以问题:如何获得Lambda权限列表?我在这里缺少什么,如果实际上不可能,为什么?希望那里的一些AWS专家能够阐明这个

2 个答案:

答案 0 :(得分:12)

这个也困惑了我。您可以使用AWSCLI中的aws lambda add-permission命令向Lambda函数添加权限。您可以使用aws lambda remove-permission删除权限。但要查看现有权限,请使用aws lambda get-policy

答案 1 :(得分:0)

我不是AWS专家,不过这是我的建议:

转到lambda函数详细视图并转到“事件源”选项卡。它列出了所有源,允许将内容推送到lambda函数。从那里开始,您可以转到单个事件源以查看已授予的确切权限(通常是执行权限,如您的语句策略所示)。

希望有所帮助。