Spaces:
Build error
Build error
| package com.dalab.discovery.client.rest; | |
| import org.springframework.boot.test.context.TestConfiguration; | |
| import org.springframework.context.annotation.Bean; | |
| import org.springframework.context.annotation.Primary; | |
| import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity; | |
| import org.springframework.security.config.annotation.web.builders.HttpSecurity; | |
| import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; | |
| import org.springframework.security.web.SecurityFilterChain; | |
| /** | |
| * Test security configuration for integration tests. | |
| * Provides HTTP Basic authentication instead of OAuth2/JWT for simplicity. | |
| */ | |
| public class TestWebSecurityConfiguration { | |
| public SecurityFilterChain testFilterChain(HttpSecurity http) throws Exception { | |
| http | |
| .authorizeHttpRequests(authorize -> authorize | |
| .requestMatchers("/api/v1/discovery/config/**").hasRole("ADMIN") | |
| .requestMatchers("/api/v1/discovery/stats/**").hasAnyRole("ADMIN", "USER") | |
| .requestMatchers("/api/v1/discovery/scans/**").hasAnyRole("ADMIN", "DATA_STEWARD", "USER") | |
| .requestMatchers("/api/v1/discovery/jobs/**").hasAnyRole("ADMIN", "DATA_STEWARD", "USER") | |
| .anyRequest().authenticated() | |
| ) | |
| .csrf(csrf -> csrf.disable()) | |
| .httpBasic(basic -> {}); | |
| return http.build(); | |
| } | |
| } |