백엔드/Spring Security

spring security 필터 다중 설정

김어찐 2021. 12. 2. 02:02
728x90

@Order로 순서 설정

package io.security.basicsecurity;

import org.springframework.context.annotation.Configuration;
import org.springframework.core.annotation.Order;

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.configuration.WebSecurityConfigurerAdapter;


@Configuration
@EnableWebSecurity
@Order(0)
public class SecurityConfig extends WebSecurityConfigurerAdapter {



    @Override
    protected void configure(HttpSecurity http) throws Exception {
        // 어떠한 요청에도 인증 받게
        http
                .antMatcher("/admin/**")
                .authorizeRequests()
                .anyRequest().authenticated();
        // 인증 방법은 alert 로그인 방식으로
        http
                .httpBasic();


    };
}

@Configuration
@Order(1)
class SecurityConfig2 extends WebSecurityConfigurerAdapter {



    @Override
    protected void configure(HttpSecurity http) throws Exception {
        // 어떠한 요청에도 인증 받게
        http
                .authorizeRequests()
                .anyRequest().permitAll();
        // 인증 방법은 form 로그인 방식으로
        http
                .formLogin();


    };
}

728x90