在 swagger ui 中使用 asp.net core 3.1 中的 Swashbuckle 6.0.5 使 AuthorizationUrl 可配置
Posted
技术标签:
【中文标题】在 swagger ui 中使用 asp.net core 3.1 中的 Swashbuckle 6.0.5 使 AuthorizationUrl 可配置【英文标题】:make AuthorizationUrl configurable in swagger ui using Swashbuckle 6.0.5 in asp.net core 3.1 【发布时间】:2021-03-05 21:10:10 【问题描述】:在 asp.net core 的 swagger 中使用带有隐式流的 OAuth2 作为 SecurityDefinition 时是否可以输入 AuthorizationUrl ?
我的目标是使 AuthorizationUrl 动态化,因此当用户看到为 OAuth2 输入 clientId 的模式时,他也可以更改 AuthorizationUrl 。
【问题讨论】:
可能相关:Handle multiple environments forauthorizationUrl
and tokenUrl
in an OpenAPI spec
【参考方案1】:
OpenAPI 规范和 Swagger UI 都不支持这一点。 authorizationUrl
是硬编码的,cannot be parameterized。需要将不同的 OAuth 身份提供者定义为单独的安全方案。
但是,authorizationUrl
可以定义为 relative to the API server URL,它本身 can be relative 到 OpenAPI YAML/JSON 文件的位置。
【讨论】:
以上是关于在 swagger ui 中使用 asp.net core 3.1 中的 Swashbuckle 6.0.5 使 AuthorizationUrl 可配置的主要内容,如果未能解决你的问题,请参考以下文章
如何在ASP.Net Core的生产环境中保护swagger ui
在 swagger ui 中使用 asp.net core 3.1 中的 Swashbuckle 6.0.5 使 AuthorizationUrl 可配置
[第二篇]如何在ASP.Net Core的生产环境中使用OAuth保护swagger ui
如何在 ASP.NET Core 中更改 Swagger 的基本 url
在 Azure 的 ASP.NET Core 3.1 应用程序中获取 swagger-ui 返回 404
ASP.NET Core 3.1 Web API(版本控制)和 Swagger UI 在发布到 Azure 后由于 MvcJsonOptions 而失败