스프링 시큐리티 alwaysRemember = false
설정 내용
http.rememberMe()
.key(REMEMBERME_KEY)
.rememberMeParameter(REMEMBERME_PARAMETER)
.rememberMeCookieName(REMEMBERME_COOKIENAME)
.tokenValiditySeconds(60 * 60 * 24 * 7)
.alwaysRemember(false)
.tokenRepository(rememberMeTokenRepository)
.userDetailsService(rememberMeUserService).and();
문제
checkbox에 체크를 하고 안하고 에 대해서 rememberme 가 작동하고 안하고 해야하는데 작동을 하지 않아서 원일을 찾아본결과
login.html코드
<form name="f" action="/login" method="post" class="form-signin" role="form" onsubmit="return false;">
<input class="form-control" name="login_id" type="text" placeholder="<spring:message code="login.form.id"/>" style="margin-bottom:5px;" autofocus autocomplete="off">
<input class="form-control" name="login_password" type="password" placeholder="<spring:message code="login.form.pw"/>" value="">
<div class="checkbox" style="margin-bottom:13px;">
<label style="padding-top:5px;">
<input type="checkbox" id="varsqlRememberMe" name="varsqlRememberMe" value="remember"> Remember me
</label>
</div>
<div style="padding-bottom:10px;">
<button class="btn btn-lg btn-primary btn-block btn-login" type="button">
<spring:message code="btn.login" />
</button>
</div>
</form>
원인
checkbox 의 value에 값이 있어서 발생한 문제 .
<input type="checkbox" id="varsqlRememberMe" name="varsqlRememberMe" value="remember"> Remember me
해결방안
checkbox 에 value를 삭제 하거나 value="on" 이렇게 추가하면 작동함.