相关疑难解决方法(0)

AWS API网关自定义授权程序AuthorizerConfigurationException

对于Kinesis流,我使用AWS API Gateway创建了代理API.我使用python Lambda为代理添加了一个自定义授权程序.在发布lambda函数和部署API之后,我能够使用Gateway Test功能成功测试API.我可以看到cloudwatch中的日志,其中包含来自自定义auth lambda函数的详细打印.成功验证后,API Gateway将记录推送到我的Kinesis流

但是当我从Chrome Postman客户端调用相同的API时,我得到500内部服务器错误,响应头包括X-Cache→来自cloudfront的错误,x-amzn-ErrorType→AuthorizerConfigurationException

Lambda auth函数返回允许对我的API执行请求的策略.返回的政策文件是:

            {
              "policyDocument": {
                "Version": "2012-10-17",
                "Statement": [
                  {
                    "Action": "execute-api:Invoke",
                    "Resource": [
                      "arn:aws:execute-api:us-east-1:1234567:myapiId/staging/POST/*"
                    ],
                    "Effect": "Allow"
                  }
                ]
              },
              "principalId": "Foo"
            }

为什么请求会因Chrome或curl而失败,但API网关的相同API测试工作正常?

amazon-web-services custom-authentication aws-lambda aws-api-gateway

9
推荐指数
3
解决办法
9359
查看次数