2016-02-09 84 views
3

在我的API网关控制台,我做了以下内容:API密钥,但没有钥匙的请求仍在运行

  • 创建API密钥
  • 关联与部署API阶段的关键
  • 经过的关键的“已启用”复选框
  • 对于我的API的每个资源的每个方法,需要进行身份验证的API密钥

我预计curl https://my-api-gateway-url/my-resource到403,因为我没有包括x-api-key标题,但是它是200。 API网关后面的Lambda函数最终运行时,它不应该没有API密钥运行。

如何确保密钥是必需的以验证所有请求?

编辑:我在这里以下文件:http://docs.aws.amazon.com/apigateway/latest/developerguide/how-to-api-keys.html

回答

7

只是回答我自己的问题。因为我知道我不是唯一一个想知道这个的人,就像this person

答案是重新部署您的API。尽管重新部署听起来很明显,但文档完全忽略了重要的最后一步,因此很容易忽略。

+0

很高兴它为你工作。感谢您对文档的反馈。我将把它传递给我们的文档团队,以确保涵盖所有必要的步骤。 最佳 尤尔根,API网关 – Jurgen

+0

也就是说SOOO烦人....花了30分钟试图找出为什么我的API密钥验证不能正常工作......再部署API和固定 – DataMania

+0

感谢分享。 @Jurgen:我认为我们需要警告,例如“警告:未部署的更改” – wvdz