无服务器框架AWS 403仅限域的禁止错误

时间:2017-11-19 13:07:35

标签: amazon-web-services aws-lambda amazon-cognito serverless-framework serverless-plugins

我正在为项目进行无服务器设置并遇到一个奇怪的错误。在我不得不删除旧证书并创建一个新证书之前,这工作正常。

简而言之,我在serverless-stack.com上关注教程系列以供参考,在运行apig-test命令时,我收到以下错误。

{ status: 403,
  statusText: 'Forbidden',
  data: { message: 'Forbidden' } }

这令我尖叫政策错误。所以我去检查我的策略以确保它允许执行AuthRole,事实上确实如此。我在角色下的IAM部分验证了这一点,并查看了我在设置Cognito时创建的服务Auth_Role。

我不想在这里提供信息超载,但如果有人对下一步的观点有什么想法,我会非常感激,我会提供你想在这里看到的任何细节。

我要注意的一件事是,如果我使用直接URL运行apig-test命令而不是我的域,那么它可以正常工作。

这证明我的代码没有任何问题,但更多关于我如何设置域的策略设置。

我相应地运行了sls create_domain,我看到了Route53&中的条目。 API网关,他们已经在很多小时前完成了40分钟。我保证使用正确的证书,因为我擦掉了另一个。

我的自定义域已经过去了,这要归功于我找到的插件和本教程(https://serverless.com/blog/serverless-api-gateway-domain/),它最近才发现当我意识到我停止工作时需要为我的SSL证书添加更多域名。

所以我假设政策错误在某处,但不确定在哪里看?

1 个答案:

答案 0 :(得分:7)

好的,我找到了答案。在自定义域下的API网关中,有一个名为基本路径映射的部分,必须将其设置为您的一个函数,其默认路径为/(或者只为路径输入任何内容),然后是目标你的lambda服务。这似乎使它对我有用。