我在一个有多个端点和api的项目中工作,所以我实现了basicauth作为一种安全措施。
这是我的配置类,它实现了basicauth和一些招摇过市的配置。
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build()
.apiInfo(getInfo())
.securityContexts(Arrays.asList(SecurityContext()))
.securitySchemes(Arrays.asList(basicAuthScheme()));
}
private ApiInfo getInfo() {
return new ApiInfoBuilder()
.title("title")
.description("desc")
.version("version")
.build();
}
private SecurityContext SecurityContext() {
return SecurityContext.builder()
.securityReferences(Arrays.asList(basicAuthReference()))
.forPaths(PathSelectors.any())
.build();
}
private SecurityScheme basicAuthScheme() {
return new BasicAuth("basicAuth");
}
private SecurityReference basicAuthReference() {
return new SecurityReference("basicAuth", new AuthorizationScope[0]);
}
}
在application.yml中,我定义了授权用户凭据。
spring
security:
user:
password: password
name: admin
但关于localhost:8080/swagger-ui.html,几乎所有我键入的用户登录/密码都被授权。
我该怎么解决这个问题?如果有人能帮忙,我将不胜感激,谢谢。
暂无答案!
目前还没有任何答案,快来回答吧!