일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- postman
- mysql
- Database
- Maven
- Tomcat #SpringFramework
- mssql
- IntelliJ
- 스프링부트
- springboot #controller #jsp
- development
- Developer
- SpringInitializer
- 스프링부트 #springboot #project #Intellij
- tcping
- HATEOAS
- Web
- undefined
- 스프링시큐리티
- 웹개발
- sqldeveloper
- ojdbc
- install
- restapi
- SpringSecurity
- springboot
- apache
- oracle
- RESTful
- 환경변수
- Oracle11g
Archives
- Today
- Total
여백에 도장 찍기
Spring Security - configure method override 본문
Spring security 에서 Login process 가 어떤 방식으로 이루어지는지에 대한 설정을 살펴보자.
1. 가장 먼저 Controller에서 url이 mapping된 부분을 살펴보자.
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class SimpleController {
@GetMapping("/usr/login")
public String login() {
return "/login";
}
}
/usr/login 으로 GET방식의 요청이 들어올 경우 WEB-INF/jsp/login.jsp 를 return 한다.
2. login.jsp에서 form 형태를 살펴보자.
<form action="/loginProcess" method="POST">
<fieldset>
<section>
<label><input type="text" name="username" placeHolder="ID"></label>
</section>
<section>
<label><input type="password" name="password" placeHolder="비밀번호"></label>
</section>
</fieldset>
</form>
form action을 "/loginProcess"로 준 것에 주목하자.
3. 위의 2번에서 설정한 form Login 설정은 아래의 Spring Security 관련 설정 파일에서 설정되어지고 있다.
Spring Seurity 에서 WebSecurityConfigureAdapter class를 상속받아 오버라이드된 Configure 함수는 아래와 같다.
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;
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
.antMatchers("/usr/login").permitAll();
http.formLogin()
.loginProcessingUrl("/loginProcess")
.loginPage("/usr/login")
.defaultSuccessUrl("/list");
}
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
super.configure(auth);
}
}
'Web Framework > Spring Boot ' 카테고리의 다른 글
Spring boot - myBatis (0) | 2019.07.08 |
---|---|
Spring boot - MSSQL 연동 설정 (0) | 2019.07.04 |
Spring Boot - 웹 디렉터리 생성 및 설정 (0) | 2019.07.03 |
Spring Boot 프로젝트 생성 (IntelliJ) (0) | 2019.06.28 |
Spring boot - Controller JSP Return 하기. (0) | 2019.04.12 |
Comments