ㄱㅂㅎㅈ
Spring security 로그인 설정 본문
Spring Security를 적용해 여타 설정을 다 맞추어 서버 콘솔에는 에러가 뜨지 않는데 로그인이 전혀 되지 않았다.
디버그 모드로 돌려보다 원인을 찾았는데, 문제는 User 도메인에 있었다.
Spring에서 제공하는 UserDetails 객체를 구현하는 User를 만들고 몇 가지 함수를 오버라이드했는데 제대로 확인하지 않고 넘어간 것이 화근이었다.
@Override
public String getUsername() {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean isAccountNonExpired() {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean isAccountNonLocked() {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean isCredentialsNonExpired() {
// TODO Auto-generated method stub
return false;
}
@Override
public boolean isEnabled() {
// TODO Auto-generated method stub
return false;
}
boolean isAccountNonExpired() : 계정이 만료되었는지 확인
boolean isAccountNonLocked() : 계정이 잠금상태인지 확인
boolean isCredentialsNonExpired() : 계정의 자격(암호)이 만료되었는지 확인
boolean isEnabled() : 계정이 사용 가능한지 확인
각각의 쓰임에 맞게 오버라이딩하게끔 만들어져있는데 보다시피 초기 설정은 전부 false 로 되어있다. 전부 true가 리턴되지 않으면 실행 도중 예외가 발생해 로그인이 되지 않는다.
'개발' 카테고리의 다른 글
textarea 줄바꿈 처리 ('\n', 개행문자) (0) | 2019.11.01 |
---|---|
Java SimpleDateFormat 24시 표시 (HH, kk) (0) | 2019.10.27 |
Cannot load JDBC driver class 'oracle.jdbc.driver.OracleDriver' (0) | 2019.10.24 |
Missing artifact com.oracle:ojdbc6:jar:12.2.0.1 (0) | 2019.10.24 |
자바 10, 톰캣 8.5 호환 (0) | 2019.10.22 |
Comments