如何保护Swagger.yaml文件?

如何保护Swagger.yaml文件?,swagger,swagger-ui,swagger-2.0,Swagger,Swagger Ui,Swagger 2.0,我正在为我的项目构建一个OpenAPI支持,但我需要swagger.yaml文件,以便仅对授权用户可用 Swagger UI和Swagger Editor似乎都希望Swagger.yaml文件可以公开访问 我想了各种各样的方法来解决这个问题。可以使用“签名”URL,类似于S3的方式——只有具有链接的人才能访问它 什么是好的做法?我想出来了。上有可在index.html中设置的授权参数的说明: 要传递给swagger js的授权对象。在这里设置它将触发在获取swagger描述文件时包含任何授权或自

我正在为我的项目构建一个OpenAPI支持,但我需要swagger.yaml文件,以便仅对授权用户可用

Swagger UI和Swagger Editor似乎都希望Swagger.yaml文件可以公开访问

我想了各种各样的方法来解决这个问题。可以使用“签名”URL,类似于S3的方式——只有具有链接的人才能访问它

什么是好的做法?

我想出来了。上有可在
index.html
中设置的
授权
参数的说明:

要传递给swagger js的授权对象。在这里设置它将触发在获取swagger描述文件时包含任何授权或自定义签名逻辑。注意对象结构应该是{key:AuthorizationObject}

我所做的是设置一个Node.js服务器来保护Swagger UI。如果未在cookie中设置令牌,它将通过OAuth 2.0流引导用户,设置cookie,然后才指向swagger ui

Swagger ui依次设置了
授权
参数,如下所示:

authorizations: {
      "_auth": new SwaggerClient.ApiKeyAuthorization(
          "Authorization", "Bearer "+ Cookies.get("MyAccessToken"),
           "header")
    }
然后,在下载swagger.yaml文件时,头被传递到服务器。

我找到了它。上有可在
index.html
中设置的
授权
参数的说明:

要传递给swagger js的授权对象。在这里设置它将触发在获取swagger描述文件时包含任何授权或自定义签名逻辑。注意对象结构应该是{key:AuthorizationObject}

我所做的是设置一个Node.js服务器来保护Swagger UI。如果未在cookie中设置令牌,它将通过OAuth 2.0流引导用户,设置cookie,然后才指向swagger ui

Swagger ui依次设置了
授权
参数,如下所示:

authorizations: {
      "_auth": new SwaggerClient.ApiKeyAuthorization(
          "Authorization", "Bearer "+ Cookies.get("MyAccessToken"),
           "header")
    }
然后,在下载swagger.yaml文件时,将头传递给服务器