首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NodeJS无服务器抛出错误禁止

NodeJS无服务器抛出错误禁止
EN

Stack Overflow用户
提问于 2020-05-19 01:57:41
回答 1查看 495关注 0票数 0

我在尝试将Express NodeJS应用程序部署到AWS Lambda时出现以下错误。

代码语言:javascript
复制
ServerlessError: Forbidden
      at /Users/name/.nvm/versions/node/v12.16.3/lib/node_modules/serverless/lib/plugins/aws/provider/awsProvider.js:331:27
      at runMicrotasks (<anonymous>)
      at processTicksAndRejections (internal/process/task_queues.js:97:5)

检测该问题的命令是SLS_DEBUG=1 serverless deploy

serverless.yml

代码语言:javascript
复制
service: mail-server
provider:
  name: aws
  runtime: nodejs12.16
  stage: dev
  region: ap-southeast-1
  memorySize: 128
functions:
  app:
    handler: app/app.handler
    events: 
      - http: 
          path: /
          method: ANY
          cors: true
      - http: 
          path: /{proxy+}
          method: ANY
          cors: true

我一直在关注这个教程:https://bitbucket.org/blog/deploy-an-express-js-app-to-aws-lambda-using-the-serverless-framework

下面是分配的策略:

代码语言:javascript
复制
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "Stmt1482712489000",
      "Effect": "Allow",
      "Action": [
        "iam:CreateRole",
        "iam:PutRolePolicy",
        "lambda:CreateFunction",
        "lambda:InvokeAsync",
        "lambda:InvokeFunction",
        "iam:PassRole",
        "lambda:UpdateAlias",
        "lambda:CreateAlias",
        "lambda:GetFunctionConfiguration",
        "lambda:AddPermission",
        "lambda:UpdateFunctionCode",
        "s3:ListBucket"
      ],
      "Resource": [
        "*"
      ]
    }
  ]
}

EN

回答 1

Stack Overflow用户

发布于 2020-05-19 13:51:24

  1. 如果需要任何环境变量将它们传递给函数,请尝试首先检查您的代码。
  2. 尝试在完全访问管理员权限的情况下运行函数检查它是否工作(这不是一个好主意,但最好调试权限问题)

{ "Version": "2012-10-17", "Statement": [ { "Action": "*", "Resource": "*", "Effect": "Allow" } ] }

3:尝试从cloud watch更深入地研究日志。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61875971

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档