Spaces:
Build error
Build error
da-admin-service-dev
/
src
/test
/java
/com
/dalab
/adminservice
/config
/TestSecurityConfiguration.java
| package com.dalab.adminservice.config; | |
| import static org.mockito.Mockito.*; | |
| import org.springframework.boot.test.context.TestConfiguration; | |
| import org.springframework.context.annotation.Bean; | |
| 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.config.annotation.web.configurers.AbstractHttpConfigurer; | |
| import org.springframework.security.config.http.SessionCreationPolicy; | |
| import org.springframework.security.oauth2.jwt.JwtDecoder; | |
| import org.springframework.security.web.SecurityFilterChain; | |
| /** | |
| * Test security configuration for da-admin-service tests. | |
| * Enables method-level security to test @PreAuthorize annotations. | |
| */ | |
| public class TestSecurityConfiguration { | |
| public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { | |
| http | |
| .csrf(AbstractHttpConfigurer::disable) | |
| .sessionManagement(session -> session.sessionCreationPolicy(SessionCreationPolicy.STATELESS)) | |
| .authorizeHttpRequests(authz -> authz | |
| .requestMatchers("/api/v1/admin/**").hasRole("ADMIN") | |
| .anyRequest().authenticated() | |
| ) | |
| .oauth2ResourceServer(oauth2 -> oauth2 | |
| .jwt(jwt -> jwt.decoder(jwtDecoder())) | |
| ); | |
| return http.build(); | |
| } | |
| public JwtDecoder jwtDecoder() { | |
| return mock(JwtDecoder.class); | |
| } | |
| } |