如何使用密码保护 swagger 文档

How to protect swagger documentation with password

我正在构建一个 flask 应用程序,需要在生产环境中为 swagger 文档添加密码,但不知道如何操作。这是我的代码:

api = Api(
    version='1.0',
    title='API',
    description='Main API',
    doc='/doc',
    authorizations=authorizations)
...
api.init_app(app)

这份文档不应该 public 给任何人看,对吧?但我找不到给它添加密码的方法。任何建议都会很棒。

我知道很晚了,但还是。

class MyApi(Api):
    def render_doc(self):
        view = super().render_doc()
        if current_user.is_authenticated and current_user.has_role('admin'):
            return view
        return redirect(url_for('security.login', next=request.url))

您需要修改此方法,returns结束视图功能。