Spring Boot 3 не загружает чванствоJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Spring Boot 3 не загружает чванство

Сообщение Anonymous »

Я пытаюсь документировать свое Spring-приложение с помощью Swagger, но, похоже, оно не находит конечную точку.
Найдите ниже мой класс конфигурации безопасности:

Код: Выделить всё

@Configuration
@EnableWebSecurity
@EnableMethodSecurity // Enable method security
public class SecurityConfig {

@Autowired
private JwtRequestFilter jwtRequestFilter;

@Autowired
private MyUserDetailsService myUserDetailsService; // Autowire your service here

//    Autowired@
//    private WhiteListURLGenerator whiteListURLGenerator;

@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {

http
.csrf(AbstractHttpConfigurer::disable) // Disable CSRF protection
.authorizeHttpRequests(authz -> authz
//                        .requestMatchers(whiteListURLGenerator.getWhiteListURLs()).permitAll()
.requestMatchers(HttpMethod.POST, "/api/admin/users").permitAll()
.requestMatchers(HttpMethod.GET, "/api/admin/users").permitAll()
.requestMatchers(HttpMethod.GET, "/api/admin/users/{id}").permitAll()

.requestMatchers(HttpMethod.PUT, "/api/admin/users/**").hasRole("ADMIN")
.requestMatchers(HttpMethod.DELETE, "/api/admin/users/**").hasRole("ADMIN")

//                        .requestMatchers("/authenticate").permitAll() // Allow access to /authenticate
.requestMatchers("/api/admin/products").permitAll()
.requestMatchers(HttpMethod.GET, "/api/admin/products/{id}").permitAll()

.requestMatchers(HttpMethod.DELETE, "/api/admin/products/**").hasRole("ADMIN")

// Swagger UI and API docs
.requestMatchers("/swagger-ui/**", "/v3/api-docs/**", "/swagger-resources/**", "/swagger-ui.html", "/webjars/**").permitAll()

// Secure other endpoints
.anyRequest().permitAll()
)
.sessionManagement(session ->  session
.sessionCreationPolicy(SessionCreationPolicy.STATELESS) // Use stateless sessions (JWT)
);

// Register the JWT filter
http.addFilterBefore(jwtRequestFilter, UsernamePasswordAuthenticationFilter.class);

return http.build();
}

@Bean
public AuthenticationManager authManager(HttpSecurity http) throws Exception {
AuthenticationManagerBuilder authenticationManagerBuilder =
http.getSharedObject(AuthenticationManagerBuilder.class);

authenticationManagerBuilder.userDetailsService(myUserDetailsService)
.passwordEncoder(passwordEncoder());
return authenticationManagerBuilder.build();
}

@Bean
public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}

}
Также найдите мой класс чванства:

Код: Выделить всё

@Configuration
@OpenAPIDefinition(info = @Info(title = "User Management API", version = "1.0", description = "API documentation for User Management Services"))
@SecurityScheme(
name = "bearerAuth",
type = SecuritySchemeType.HTTP,
bearerFormat = "JWT",
scheme = "bearer"
)
public class SwaggerConfig {

@Bean
public GroupedOpenApi authApi() {
return GroupedOpenApi.builder()
.group("Authentication")
.pathsToMatch("/authenticate/**")
.build();
}

@Bean
public GroupedOpenApi userApi() {
return GroupedOpenApi.builder()
.group("User Management")
.pathsToMatch("/api/admin/users/**")
.build();
}

@Bean
public GroupedOpenApi productApi() {
return GroupedOpenApi.builder()
.group("Product Management")
.pathsToMatch("/api/admin/products/**")
.build();
}

@Bean
public OpenAPI customOpenAPI() {
return new OpenAPI()
.info(new io.swagger.v3.oas.models.info.Info()
.title("User Management API")
.version("1.0")
.description("API documentation for User Management Services"));
}
}

Я также добавил ниже следующие зависимости:

Код: Выделить всё

org.springdoc
springdoc-openapi-security
1.8.0



org.springdoc
springdoc-openapi-ui
1.8.0

Затем я попытался загрузить все пути Swagger и получил сообщение об ошибке, сообщающее, что не удалось загрузить мои конечные точки. Я даже пытался создать собственный путь в файле application.properties и все еще получал сообщение ошибка, а также ошибка 403

Подробнее здесь: https://stackoverflow.com/questions/790 ... ng-swagger
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Как включить чванство во внутренней среде разработки, которая не является локальным хостом
    Anonymous » » в форуме C#
    0 Ответы
    23 Просмотры
    Последнее сообщение Anonymous
  • Springboot Springdoc-openapi, как настроить чванство
    Anonymous » » в форуме JAVA
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Springboot Springdoc-openapi, как настроить чванство
    Anonymous » » в форуме JAVA
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous
  • Springboot Springdoc-openapi, как настроить чванство
    Anonymous » » в форуме JAVA
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • Я хочу проверить свой API отдыха. Мой вопрос: как я могу проверить API моего отдыха через чванство? Как мне управлять эт
    Anonymous » » в форуме JAVA
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»