【发布时间】:2018-12-12 00:53:01
【问题描述】:
我已经构建了一个 swagger 文档,生成了 swagger 客户端(支持 python2 的 python-flask)。
我已经构建了我的代码,经过测试,对我所拥有的感到满意。现在我想使用 https 和 Basic Auth 来保护我的 API 端点。
这是 Open Api 规范 (OAS) 的 v2,所以我设置如下(描述为 https://swagger.io/docs/specification/2-0/authentication/basic-authentication/)
swagger: "2.0"
securityDefinitions:
basicAuth:
type: "basic"
我是否指定我的端点具有单独的安全设置,或者我是否在 YAML 的根级别为所有端点指定此设置,都没有区别。
security:
- basicAuth: []
我使用我的 YAML,导出为 JSON,然后运行以下命令来重建 swagger_server 代码:
java -jar swagger-codegen-cli-2.3.1.jar generate -l python-flask -
DsupportPython2=true -i swagger.json -a "Authorization: Basic
Base64encodedstring"
我期望控制器或模型代码验证是否已传递与生成代码中指定的授权匹配的基本授权标头,但我在任何地方都看不到任何引用。不确定我是否读错了,或者我的操作方式或我使用的某些选项是否存在问题?
【问题讨论】:
-
-a/--auth参数是用于访问 Swagger JSON/YAML 文件的授权标头。这不是生成的服务器/客户端的身份验证。 -
感谢@Helen,所以我必须自己验证身份验证是否通过?没关系,为这个基本问题道歉。
标签: python flask swagger openapi