자동 로그인

스프링 시큐리티는 메모리나 데이터베이스를 사용하여 처리한다.

기능을 구현하기 위해 security:remember-me 태그를 이용하여 시큐리티 설정 파일을 수정한다.

✅ 데이터베이스 테이블

create table persistent_logins(
    username varchar2(64) not null,
    series varchar2(64) not null,
    token varchar2(64) not null,
    last_used date not null,
    constraint pk_persistent_logins primary key(series)
);

✅ 환경설정

✅ 자동 로그인

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib uri="<http://java.sun.com/jsp/jstl/core>" prefix="c" %>
<%@ taglib uri="<http://www.springframework.org/security/tags>" prefix="sec"%>

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<h1>LoginForm</h1>
	<h2><c:out value="${error }"/></h2>		<!-- 에러 발생 시, 출력할 메시지 -->
	<h2><c:out value="${logout }"/></h2>	<!-- 로그아웃 시, 출력할 메시지 -->
	
	<form method="post" action="/login">
		username : <input type="text" name="username" value="admin"><br>
		password : <input type="text" name="password" value="admin"><br>
		**<!-- 로그인 상태 유지 체크박스 -->
		<input type="checkbox" name="remember-me">Remember me**
		<input type="submit" value="로그인">
		<sec:csrfInput/>
	</form>
</body>
</html>

💡 자동 로그인 시, 만들어지는 쿠키정보들

Untitled