【问题标题】:Changing to new api key for usage plan in aws api gateway does not work在 aws api 网关中更改为使用计划的新 api 密钥不起作用
【发布时间】:2020-07-30 18:27:51
【问题描述】:

我有一个 aws api gateway api,它使用 api 密钥对请求进行身份验证。它与使用计划相关联并且正在运行。后来我们需要一个新的 api 键名和值。我从使用计划中删除了旧的 api 密钥,并将新的 api 密钥添加到使用计划中。重新部署舞台。现在,当在标头中使用新的 api 键名称和值时,请求始终返回 403 禁止。不知道出了什么问题。一切看起来都不错。

【问题讨论】:

  • API 密钥是否与之前的密钥附加到相同的使用计划?
  • 第一次尝试我删除了第一个密钥并重复使用不同名称的相同密钥。这没有用。然后我创建了一个全新的键名和值。还是不行。
  • 您有您提出的请求的示例吗?也许作为一个 cURL 请求?还要确认密钥与 API 网关资源在同一个帐户中
  • 是一个get url:xxxxxx.execute-api.us-west-2.amazonaws.com/get-something在header:xxxx-api-key:xxxxxx
  • 您使用的标头必须x-api-key。 API 网关中的密钥名称无关紧要(一个 API 可以有许多与之关联的密钥)。

标签: amazon-web-services aws-api-gateway amazon-api-gateway


【解决方案1】:

API 密钥的标头必须为 x-api-key,否则,当为阶段启用 API 密钥身份验证时,API 将返回 403

您将 API 密钥分发给您的客户,并要求他们将 API 密钥作为每个传入请求的 X-API-Key 标头传递。

密钥的名称不需要共享它,实际上您可以使用它来描述将在您的集成中使用此 API 密钥的应用程序/用户。

要调用您的 API,您可以使用下面的 $key 是 API 密钥值。

curl -H "x-api-key: $key" https://xxxxxx.execute-api.us-west-2.amazonaws.com/get-token

您可以在Choose an API key source 文档中找到更多相关信息。

【讨论】:

    猜你喜欢
    • 2020-09-12
    • 2019-05-05
    • 1970-01-01
    • 1970-01-01
    • 2017-12-03
    • 1970-01-01
    • 2019-07-13
    • 1970-01-01
    • 2020-02-13
    相关资源
    最近更新 更多