Swagger 在OpenAPI规范中处理authorizationUrl和tokenUrl的多个环境

Swagger 在OpenAPI规范中处理authorizationUrl和tokenUrl的多个环境,swagger,openapi,Swagger,Openapi,是否可以在oauth2安全方案中以某种方式为authorizationUrl和tokenUrl模板化基本路径,以处理多个环境(例如dev、sit、uat) 我工作的公司在每个环境中有一个单独的IDP租户,每个环境中的服务将针对特定的租户/发行人验证令牌 理想情况下,我可以定义和选择租户基础URL,类似于我如何为API路由模板服务器-请参阅。 我的securitySchemes当前看起来如下: "securitySchemes": { "oauth"

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

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

理想情况下,我可以定义和选择租户基础URL,类似于我如何为API路由模板服务器-请参阅。

我的
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,但仍然有dev、sit和uat

OpenAPI不支持模板化OAuth端点,下面是现有的增强请求:谢谢Helen。很高兴看到其他人考虑/请求了类似的功能:)