我正在尝试将openapi/swagger文件导入api网关,但无法按预期获得安全设置。我希望所有路径都需要一个api密钥。
导入后在控制台中设置它所需的api密钥是可行的,但这种解决方案是不可取的,同样可行的是在每个路径中单独设置安全字段,但我正在寻找全局解决方案。
当我尝试导入文件时,我会收到以下警告:
Your API was not imported due to errors in the Swagger file.
Method 'GET' on resource '/' specified security,
but no custom authorizers were created and the extension
x-amazon-apigateway-auth was not set.
This method will be not be secured.
看起来,我要么需要一个lambda作为api密钥的自定义授权器(我不熟悉授权器,但如果我在控制台中设置所需的api密钥时不需要,这似乎没有意义);或者我需要用这个神秘的x-amazon-apigateway-auth
做些什么,我找不到文档(亚马逊在这里记录了所有其他openapi扩展)。
一个迷你示例如下:
openapi: 3.0.1
info:
title: test
version: 0
servers:
- url: "/"
security:
- ApiKey: []
paths:
"/":
get:
# if I copy the security part into here things work
responses:
'204':
description: no content
x-amazon-apigateway-integration:
httpMethod: GET
type: http
uri: https://httpstat.us/204
components:
securitySchemes:
ApiKey:
type: apiKey
name: x-api-key
in: header
x-amazon-apigateway-api-key-source: HEADER
由于api密钥安全性是在根级别设置的,这向我表明所有路径都应该使用api密钥(除非被单个路径覆盖),实际发生的是上述警告,并且在导入时不需要api密钥。
在我写这个答案的时候,根据他们的留档,AWS API网关不支持在根级别设置安全性。
API网关不使用OpenAPI规范中定义的根级别安全性。因此,需要在操作级别定义安全性才能适当应用。
问题内容: 因此,我正在执行的第一个项目中使用Google Maps API。是的,我是新手,如果这是基础知识或显而易见的事情,我感到抱歉,但是我找不到明确的答案或方向。以下是我从Google找到的有关安全使用API密钥的文档。 安全使用API密钥的最佳做法 在应用程序中使用API密钥时,请注意确保其安全。公开暴露您的凭据可能会导致您的帐户遭到盗用,这可能会导致您的帐户发生意外费用。为
所以我在我做的第一个项目上使用谷歌地图应用编程接口...所以是的,我是新来的,如果这是基本的或显而易见的,我很抱歉,但是我还没有找到一个明确的答案或方向。下面是我从谷歌找到的关于安全使用API密钥的留档。 安全使用API密钥的最佳实践 在应用程序中使用API密钥时,请注意确保它们的安全。公开披露您的凭据可能会导致您的帐户被泄露,这可能会导致您的帐户发生意外费用。要确保API密钥的安全,请遵循以下最
我启用了Swagger open API 3.0,如下所示: 添加了以下依赖项 之后添加了下面的bean进行定制。 一切正常。我可以访问swagger-用户界面和api文档。 但是我有几个使用keycloak OAuth 2.0保护的api。当我试图访问这些安全的api时,我收到了未经授权的错误(这是意料之中的)。我也想从swagger open api 3.0中测试安全的api。 有人能帮我在s
Swagger支持api密钥的安全性,但这似乎仅限于单个参数。 有没有办法定义一组参数(key和secret)作为请求中的参数? 或者,唯一的方法就是跳过安全方案,只将这些参数添加到每个请求中?
Setting up the API Gateway(设置API网关) 简介 一般流程 案例 Web 应用(API 消费者) API Gateway (api 网关) LoopBack 应用 执行 demo 简介 该StrongLoop API网关实际也是LoopBack的应用程序, 你可以将 网关模块合并到任何 LoopBack API 服务实例的进程中,也可以单独运行 一个典型的API 网关部
我得到异常“http://api.openweathermap.org/data/2.5/weather?q=sydney”。有人能帮忙怎么用吗。当我粘贴以下内容时,可以很好地使用web浏览器 我也试过下面的组合,但没有运气