Interface Authentication
-
- All Superinterfaces:
java.security.Principal,java.io.Serializable
- All Known Implementing Classes:
ClientAuthentication,ServerAuthentication,X509Authentication
public interface Authentication extends java.security.Principal, java.io.SerializableRepresents the state of an authentication.- Since:
- 1.0
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description static Authenticationbuild(java.lang.String username)Builds anAuthenticationinstance for the user.static Authenticationbuild(java.lang.String username, java.util.Collection<java.lang.String> roles)Builds anAuthenticationinstance for the user.static Authenticationbuild(java.lang.String username, java.util.Collection<java.lang.String> roles, java.util.Map<java.lang.String,java.lang.Object> attributes)Builds anAuthenticationinstance for the user.static Authenticationbuild(java.lang.String username, java.util.Map<java.lang.String,java.lang.Object> attributes)Builds anAuthenticationinstance for the user.java.util.Map<java.lang.String,java.lang.Object>getAttributes()In order to correctly implement theSerializablespecification, this map should be Map<String, Serializable>, however that would place a burden on those not requiring serialization, forcing their values to conform to that spec.default java.util.Collection<java.lang.String>getRoles()
-
-
-
Method Detail
-
getAttributes
@NonNull java.util.Map<java.lang.String,java.lang.Object> getAttributes()
In order to correctly implement theSerializablespecification, this map should be Map<String, Serializable>, however that would place a burden on those not requiring serialization, forcing their values to conform to that spec. This is left intentionally as Object in order to meet both use cases and those requiring serialization must ensure all values in the map implementSerializable.- Returns:
- Any additional attributes in the authentication
-
getRoles
@NonNull default java.util.Collection<java.lang.String> getRoles()
- Returns:
- Any roles associated with the authentication
-
build
@NonNull static Authentication build(@NonNull java.lang.String username)
Builds anAuthenticationinstance for the user.- Parameters:
username- User's name- Returns:
- An
Authenticationfor the User
-
build
@NonNull static Authentication build(@NonNull java.lang.String username, @NonNull java.util.Collection<java.lang.String> roles)
Builds anAuthenticationinstance for the user.- Parameters:
username- User's nameroles- User's roles- Returns:
- An
Authenticationfor the User
-
build
@NonNull static Authentication build(@NonNull java.lang.String username, @NonNull java.util.Map<java.lang.String,java.lang.Object> attributes)
Builds anAuthenticationinstance for the user.- Parameters:
username- User's nameattributes- User's attributes- Returns:
- An
Authenticationfor the User
-
build
@NonNull static Authentication build(@NonNull java.lang.String username, @Nullable java.util.Collection<java.lang.String> roles, @Nullable java.util.Map<java.lang.String,java.lang.Object> attributes)
Builds anAuthenticationinstance for the user.- Parameters:
username- User's nameroles- User's rolesattributes- User's attributes- Returns:
- An
Authenticationfor the User
-
-