为什么AWS cli拒绝我的IAM ARN而不匹配正则表达式/模式?

时间:2016-04-20 11:09:31

标签: amazon-web-services aws-lambda aws-cli

我正在尝试以多种不同的方式将我的.zip推送到AWS Lambda。尽管我已经从IAM控制台直接复制了我的ARN,但我尝试过的所有方法(grunt,gulp和cli)都会抛出错误。

我在CLI中运行以下内容

aws lambda create-function --function-name myFunctionName --runtime nodejs4.3 --role="arn:aws:iam::848602986150:user/lambda" --handler index.handler --zip-file fileb://./path/to/my.zip

并收到此错误:

A client error (ValidationException) occurred when calling the CreateFunction operation: 1 validation error detected: Value 'arn:aws:iam::848602986150:user/lambda' at 'role' failed to satisfy constraint: Member must satisfy regular expression pattern: arn:aws:iam::\d{12}:role/?[a-zA-Z_0-9+=,.@\-_/]+

任何人都知道我做错了什么?

1 个答案:

答案 0 :(得分:9)

您必须创建并传递IAM Role而不是IAM User

来自文档:

  

- 角色:

     

服务(AWS)资源。 Lambda假定的IAM角色的Amazon资源名称(ARN)   当它执行您的功能以访问任何其他Amazon Web时