2014-04-03 2 views
0

내가 참조 내 프로젝트에 봄 보안을 구현 오전 부울 변수 "활성화가", "accountNonExpired"이 명시 적으로 true로 설정되어있다 "credentialsNonExpired"봄 보안 accountNonExpired credentialsNonExpired 구현

클래스 CustomUserDetailsService.java에서 from

User 객체와 함께 반환됩니다.

 boolean enabled = true; 
     boolean accountNonExpired = true; 
     boolean credentialsNonExpired = true; 
     boolean accountNonLocked = true; 

     return new User( 
       domainUser.getLogin(), 
       domainUser.getPassword(), 
       enabled, 
       accountNonExpired, 
       credentialsNonExpired, 
       accountNonLocked, 
       getAuthorities(domainUser.getRole().getId()) 
     ); 

사용자 계정의 경우 이러한 변수는 항상 이와 같은 방식으로 적용됩니다. 관리자가 사용자 계정을 비활성화하려는 경우 부울을 enabled로 설정하는 방법을 false로 설정합니다. 이 기능을 이해하지 못합니다. 누구든지 도와 줄 수 있습니까?

User 클래스에 이러한 필드를 추가하고 db 필드도 만들어야합니까?

답변

1

정확합니다. 사용자 클래스에 필드를 추가하고 데이터베이스에 저장해야합니다. 그런 다음 accountNonLocked을 사용하여 실패한 로그인 시도 횟수를 초과 한 사용자를 잠글 수 있습니다.