我在这里完成了 OpenAPI 3.0 扩展的大多数(全部?)文档,但我找不到如何在方法上强制使用 api 密钥的示例。基本上我想镜像此处显示的内容(在“方法上需要 API 密钥”部分),但使用 OpenAPI.yaml
文件(将其导入 API 网关时)。
有任何想法吗?
Cognito 的这个例子有一个简短的type: "apiKey"
地方,但我不确定这是否与我的问题有关。
我在这里完成了 OpenAPI 3.0 扩展的大多数(全部?)文档,但我找不到如何在方法上强制使用 api 密钥的示例。基本上我想镜像此处显示的内容(在“方法上需要 API 密钥”部分),但使用 OpenAPI.yaml
文件(将其导入 API 网关时)。
有任何想法吗?
Cognito 的这个例子有一个简短的type: "apiKey"
地方,但我不确定这是否与我的问题有关。
正如Helen所提到的,API 密钥被配置为 OpenAPI 安全方案,而不是 AWS 扩展。
对于 Open API 3.0,请在根级别尝试以下配置。
components:
securitySchemes:
ApiKeyAuth: # arbitrary name for the security scheme
type: apiKey
in: header
name: x-api-key # name of the header, query parameter or cookie
然后在路径方法级别的根目录应用以下配置
security:
- ApiKeyAuth: []
在此处查看更多信息:https ://swagger.io/docs/specification/authentication/api-keys/