Spring Boot
스프링 부트, 스프링 시큐리티, Spring Boot, Spring Security
배써찰리
2019. 5. 22. 11:25
스프링 부트, Maven 환경에서 Spring Security적용을 통한
인증처리, 메뉴 권한 제어 방법
잘 정리된 링크
1. Spring Boot 기반 Spring Security 회원가입 / 로그인 구현하기
https://xmfpes.github.io/spring/spring-security/
2. Spring security 를 사용해보자!- 사용자 추가부터 로그인까지!
위 내용을 축약하여 정리하면 아래와 같다.
시큐리티의 구조
client <--> Filter <--> FilterChainProxy <--> Filter <--> Servlet
|
Spring Security Filters
Filter<-->Filter
Spring Security 관련 여러 필터들이 존재하며,
DispatcherServlet 을 호출하기 전에 체크하게 됨.
setOrder로 필터간의 순서나 우선순위를 정해서 커스터마이징 가능
pom.xml파일에 추가
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
src/main/../Config 디렉토리 밑에 SecurityConfig.java 생성
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
public void configure(WebSecurity web) throws Exception
{
web.ignoring().antMatchers("/css/**", "/script/**", "image/**", "/fonts/**", "lib/**");
}
@Override
protected void configure(HttpSecurity http) throws Exception{
http.authorizeRequests()
//.antMatchers("/admin/**").hasRole("ADMIN")
.antMatchers("/**").permitAll();
}
}
기본설정을 통해 모든 사이트가 인증없으면 접근 안되게 된다.
우선 모든 페이지 인증을 해제한다.
permitAll을 설정한다.
그리고...(추가정리)...