1

两个问题:

  1. 当您定义一个新路由并希望通过要求在标头中设置 api_key 来保护它时,您是通过security在 yaml 文件中指定该路由下的一个部分来做到这一点,还是将它放在下面parameters(或两者中) ? 如果把它放在下面就可以了parameters,那么把它放在下面有什么意义security呢?

  2. yaml 文件可以告诉您某些路由受 api_key 保护,但它没有指定该键的值(据我所知)。这是否意味着我需要编写一些自定义中间件来拦截我的路由并检查密钥的有效性,或者它可以由一个招摇工具自动生成?

谢谢。

4

2 回答 2

1

我现在和你在同一个旅程。我知道这一点:

几乎使用 swagger-tools 来使用 middleware.swaggerSecurity。

  • 他们没有告诉你的是如何验证 api_key

好吧,我发现它只是采用保存实际密钥的“范围”参数,并将其与您存储在某处的有效密钥列表进行比较。

我不明白的是如何允许流转到下一个函数(如 express 中的“next()”)或在提供无效 API 密钥时停止。有一个“回调”参数,但我不知道如何使用它(还)。

我希望这行得通。

于 2016-02-11T22:47:56.850 回答
0

您确实需要自行实施安全检查。Swagger 将帮助您定义它们,但实施是您的工作。

于 2016-02-11T05:39:10.143 回答