로그아웃
<form th:action="@{/logout}" method="post">
<button class="btn btn-secondary" th:href="@{/logout}" sec:authorize="isAuthenticated()">로그아웃</button>
</form>
기본적인 로그아웃은 간단하다. 우선 로그아웃 버튼의 thymeleaf href 경로를 /logout 으로 표기한다.
SpringSecurityConfig.java
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests(request ->
request.antMatchers("/", "/signinform", "/signin", "/duplcheck")
.permitAll()
.anyRequest().authenticated()
)
.formLogin(login ->
login.loginPage("/loginform")
.loginProcessingUrl("/login")
.permitAll()
.defaultSuccessUrl("/", false)
.failureUrl("/login-failure")
)
.logout(logout ->
logout.logoutSuccessUrl("/")
)
;
}
단순하게 logout success url을 설정해준다. 로그인과 마찬가지로 logoutUrl 을 설정할 수 있으나, '/logout' 이 기본 설정이기때문에 따로 작성해주지는 않았다.
지금은 로그아웃 시 root 페이지로 가도록 설정했으나, 후에는 이에 대한 customizing 이 필요할 것으로 예상하고 있다. 해당 내용은 필요할 때 다시 이곳에 와서 이어서 작성할지, 다른 게시글로 작성할지 결정하도록 하겠다.
'프로젝트 > Recipository' 카테고리의 다른 글
[Dev] 22.12.04. Content Write (게시글 작성) Form Data (0) | 2022.12.04 |
---|---|
[Dev] 22.12.02. 게시글 작성 항목 중 링크에 대하여(1) : 양방향 연관 관계 (0) | 2022.12.02 |
[Dev] 22.11.22 로그인 과정에서 마주한 문제 (0) | 2022.11.22 |
[Dev] 22.11.18. Login Process (0) | 2022.11.18 |
[Dev] 22.11.17. Signin with Validation (0) | 2022.11.17 |
댓글