반응형
Spring Boot에서 '로그아웃' 기능 구현
기본적인 보안 기능을 사용하기 위해 다음 스타터 패키지를 pom.xml에 추가했습니다.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
그리고 application.properties에 다음 두 가지 속성을 추가했습니다.
security.user.name=guest
security.user.password=개요
이제 홈페이지를 열었을 때 로그인 박스가 뜨면 예상대로 로그인이 됩니다.
여기서 '로그아웃' 기능을 구현합니다.사용자가 링크를 클릭하면 로그아웃됩니다.로그인해도 브라우저에 쿠키가 추가되지 않습니다.Spring Security가 사용자를 위해 HttpSession 개체를 생성하는 것으로 가정합니다.진짜예요?이 세션을 '비활성화'하고 사용자를 다른 페이지로 리디렉션해야 합니까?Spring Boot 기반 응용 프로그램에서 '로그아웃' 기능을 구현하는 가장 좋은 방법은 무엇입니까?
늦는 것이 안 하는 것보다 낫다.스프링 부트에서는 기본적으로 CSRF 보호를 포함한 많은 보안 컴포넌트가 사용됩니다.POST 로그아웃을 강제적으로 실시합니다.http://docs.spring.io/spring-security/site/docs/3.2.4.RELEASE/reference/htmlsingle/ #syslogf-logout 을 참조해 주세요.
다음과 같은 방법으로 이를 재정의할 수 있습니다.
http.authorizeRequests()
.antMatchers("/admin/**").hasRole("ADMIN")
.anyRequest().fullyAuthenticated()
.and()
.formLogin().loginPage("/login").failureUrl("/login?error").permitAll()
.and()
.logout().logoutRequestMatcher(new AntPathRequestMatcher("/logout")).logoutSuccessUrl("/login");
마지막 줄이 중요한 줄이에요.
언급URL : https://stackoverflow.com/questions/23661492/implement-logout-functionality-in-spring-boot
반응형
'source' 카테고리의 다른 글
SQL Server에서 상수 1 또는 0으로 비트 암시 (0) | 2023.04.07 |
---|---|
Django 템플릿에서 키로 사전 액세스 (0) | 2023.04.02 |
Oracle SQL Developer를 사용하여 데이터를 내보내는 방법 (0) | 2023.04.02 |
스프링 부트 시 모든 데이터베이스 관련 자동 구성 사용 안 함 (0) | 2023.04.02 |
스프링 부팅과 함께 React App을 사용할 때 React-Router 문제 발생 (0) | 2023.04.02 |