Interface UserDetails
-
- All Superinterfaces:
java.io.Serializable
- All Known Subinterfaces:
LdapUserDetails
- All Known Implementing Classes:
InetOrgPerson
,LdapUserDetailsImpl
,Person
,User
public interface UserDetails extends java.io.Serializable
Provides core user information.Implementations are not used directly by Spring Security for security purposes. They simply store user information which is later encapsulated into
Authentication
objects. This allows non-security related user information (such as email addresses, telephone numbers etc) to be stored in a convenient location.Concrete implementations must take particular care to ensure the non-null contract detailed for each method is enforced. See
User
for a reference implementation (which you might like to extend or use in your code).- See Also:
UserDetailsService
,UserCache
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.util.Collection<? extends GrantedAuthority>
getAuthorities()
Returns the authorities granted to the user.java.lang.String
getPassword()
Returns the password used to authenticate the user.java.lang.String
getUsername()
Returns the username used to authenticate the user.boolean
isAccountNonExpired()
Indicates whether the user's account has expired.boolean
isAccountNonLocked()
Indicates whether the user is locked or unlocked.boolean
isCredentialsNonExpired()
Indicates whether the user's credentials (password) has expired.boolean
isEnabled()
Indicates whether the user is enabled or disabled.
-
-
-
Method Detail
-
getAuthorities
java.util.Collection<? extends GrantedAuthority> getAuthorities()
Returns the authorities granted to the user. Cannot returnnull
.- Returns:
- the authorities, sorted by natural key (never
null
)
-
getPassword
java.lang.String getPassword()
Returns the password used to authenticate the user.- Returns:
- the password
-
getUsername
java.lang.String getUsername()
Returns the username used to authenticate the user. Cannot returnnull
.- Returns:
- the username (never
null
)
-
isAccountNonExpired
boolean isAccountNonExpired()
Indicates whether the user's account has expired. An expired account cannot be authenticated.- Returns:
true
if the user's account is valid (ie non-expired),false
if no longer valid (ie expired)
-
isAccountNonLocked
boolean isAccountNonLocked()
Indicates whether the user is locked or unlocked. A locked user cannot be authenticated.- Returns:
true
if the user is not locked,false
otherwise
-
isCredentialsNonExpired
boolean isCredentialsNonExpired()
Indicates whether the user's credentials (password) has expired. Expired credentials prevent authentication.- Returns:
true
if the user's credentials are valid (ie non-expired),false
if no longer valid (ie expired)
-
isEnabled
boolean isEnabled()
Indicates whether the user is enabled or disabled. A disabled user cannot be authenticated.- Returns:
true
if the user is enabled,false
otherwise
-
-