Browse Source

Add default implementation in UserDetails

Closes gh-14275

Signed-off-by: ahmd-nabil <ahm3dnabil99@gmail.com>
pull/14282/head
ahmd-nabil 2 years ago committed by Josh Cummings
parent
commit
dfef781e33
  1. 16
      core/src/main/java/org/springframework/security/core/userdetails/UserDetails.java
  2. 22
      test/src/test/java/org/springframework/security/test/context/showcase/CustomUserDetails.java

16
core/src/main/java/org/springframework/security/core/userdetails/UserDetails.java

@ -67,14 +67,18 @@ public interface UserDetails extends Serializable { @@ -67,14 +67,18 @@ public interface UserDetails extends Serializable {
* @return <code>true</code> if the user's account is valid (ie non-expired),
* <code>false</code> if no longer valid (ie expired)
*/
boolean isAccountNonExpired();
default boolean isAccountNonExpired() {
return true;
}
/**
* Indicates whether the user is locked or unlocked. A locked user cannot be
* authenticated.
* @return <code>true</code> if the user is not locked, <code>false</code> otherwise
*/
boolean isAccountNonLocked();
default boolean isAccountNonLocked() {
return true;
}
/**
* Indicates whether the user's credentials (password) has expired. Expired
@ -82,13 +86,17 @@ public interface UserDetails extends Serializable { @@ -82,13 +86,17 @@ public interface UserDetails extends Serializable {
* @return <code>true</code> if the user's credentials are valid (ie non-expired),
* <code>false</code> if no longer valid (ie expired)
*/
boolean isCredentialsNonExpired();
default boolean isCredentialsNonExpired() {
return true;
}
/**
* Indicates whether the user is enabled or disabled. A disabled user cannot be
* authenticated.
* @return <code>true</code> if the user is enabled, <code>false</code> otherwise
*/
boolean isEnabled();
default boolean isEnabled() {
return true;
}
}

22
test/src/test/java/org/springframework/security/test/context/showcase/CustomUserDetails.java

@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
/*
* Copyright 2002-2016 the original author or authors.
* Copyright 2002-2023 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -54,26 +54,6 @@ public class CustomUserDetails implements UserDetails { @@ -54,26 +54,6 @@ public class CustomUserDetails implements UserDetails {
return this.username;
}
@Override
public boolean isAccountNonExpired() {
return true;
}
@Override
public boolean isAccountNonLocked() {
return true;
}
@Override
public boolean isCredentialsNonExpired() {
return true;
}
@Override
public boolean isEnabled() {
return true;
}
@Override
public String toString() {
return "CustomUserDetails{" + "username='" + this.username + '\'' + '}';

Loading…
Cancel
Save