Swagger / OpenAPI有多重安全要求和副作用?

时间:2017-03-08 18:53:23

标签: swagger openapi

我正在为Swagger / OpenAPI实现代码生成器。但是,我遇到了实现安全要求的问题。这些要求被定义为对象列表。列表成员是替代(或),对象成员是anded。例如:

 [ { a:[], b:{} }, { c:{}, d:{} } ]

这应该导致(a&& b)|| (c&& d)

然而,实现这一点我遇到了实际安全要求有副作用的问题:

  • OAuth2 - 如果失败则必须重定向
  • 基本 - 必须发送HTTP 401 Unauthorized状态和WWW-Authenticate标头
  • ApiKey - 无论

但是,由于存在or,您无法允许第一次失败设置这些副作用。您似乎需要首先尝试所有组合,然后返回第一个并允许它设置标题/结果代码?

查看http://editor.swagger.io/上的生成器,我发现大多数生成器似乎忽略了安全性,Java生成器似乎and组合列表。在我的示例中,我看到a && b && c && d

所以我的问题是:

  • 是否有正确实施OpenAPI安全性的生成器?
  • 如何处理这些副作用?

0 个答案:

没有答案