处理Open API规范中的authorizationUrl和tokenUrl的多个环境

时间:2020-09-29 03:27:42

标签: swagger openapi

是否可以在oauth2安全方案中以某种方式为authorizationUrltokenUrl建立基本路径模板,以处理多个环境(例如dev,sit,uat)?

我工作的公司在每个环境中都有一个单独的IDP租户,并且在每个环境中的服务都会针对特定的租户/发行人来验证令牌。

理想情况下,我可以定义和选择租户基本URL,类似于我可以为API路由模板服务器的方式-请参见here
enter image description here

我的securitySchemes当前看起来像这样:

"securitySchemes": {
    "oauth": {
        "type": "oauth2",
        "flows": {
            "authorizationCode": {
                "authorizationUrl": "https://tenant-dev.au.auth0.com/authorize?audience=test",
                "tokenUrl": "https://tenant-dev.au.auth0.com/oauth/token"
            }
        }
    }
}

到目前为止,我唯一想到的多环境方法是使用以下安全方案配置,该配置可让我指定任何JWT。缺点是我仍然需要通过一些外部手段来获得JWT ...

"securitySchemes": {
    "oauth": {
        "type": "http",
        "scheme": "bearer",
        "bearerFormat": "JWT"
    }
}

注释;

  • 我们正在使用外部IDP,因此IDP基本URL与服务基本URL不重叠。
  • 在生产环境中将无法访问Swagger UI,但是仍然存在开发人员,人员和人员。

0 个答案:

没有答案