在 springdoc-openapi-ui 中为基本身份验证启用授权按钮

Posted

技术标签:

【中文标题】在 springdoc-openapi-ui 中为基本身份验证启用授权按钮【英文标题】:Enable Authorize button in springdoc-openapi-ui for Basic Authentication 【发布时间】:2020-05-10 21:59:42 【问题描述】:

如何在springdoc-openapi-ui (OpenAPI 3.0 /swagger-ui.html) 中为基本身份验证启用“授权”按钮。

Spring @Controller@Configuration 类必须添加哪些注解?

【问题讨论】:

【参考方案1】:

使用 @Configuration bean 中的注释 @io.swagger.v3.oas.annotations.security.SecurityScheme 为 OpenAPI 3.0 定义全局安全方案:

@Configuration
@OpenAPIDefinition(info = @Info(title = "My API", version = "v1"))
@SecurityScheme(
    name = "basicAuth",
    type = SecuritySchemeType.HTTP,
    scheme = "basic"
)
public class OpenApi30Config 


用引用定义的安全方案的@io.swagger.v3.oas.annotations.Operation注释每个需要基本身份验证的@RestController方法:

@Operation(summary = "My endpoint", security = @SecurityRequirement(name = "basicAuth"))

【讨论】:

如何将其应用于所有 API? 编辑:我刚刚得到这个链接***.com/a/60666209/3249330 @Evgeniy 我试过你提到的 UI 出现了,但无论我给它的用户 id 密码是什么,它都说授权。有什么想法吗?

以上是关于在 springdoc-openapi-ui 中为基本身份验证启用授权按钮的主要内容,如果未能解决你的问题,请参考以下文章

springdoc-openapi-ui 与 openapi-generator-maven-plugin 不兼容

使用 Spring Security 启用 Swagger springdoc-openapi-ui (OpenAPI 3.0) - 无法访问 swagger-ui.html (401)

如何在 Apache Camels RouteBuilder.restConfiguration() 中添加 OpenApi/Swagger securitySchemes?

Springdoc OpenAPI ui 不遵守“位置”中的上下文路径

SpringDoc (spring boot) utf-8 json 标头响应文档

Spring docs-Open API 3-如何将默认值设置为body?