Package de.xima.fc.utils
Class UserMgmtUtils
- java.lang.Object
- 
- de.xima.fc.utils.UserMgmtUtils
 
- 
- All Implemented Interfaces:
- Serializable
 
 public final class UserMgmtUtils extends Object implements Serializable Hilfsklasse für Funktionalitäten der Benutzerverwaltung.- See Also:
- Serialized Form
 
- 
- 
Field SummaryFields Modifier and Type Field Description static BenutzerANONYMOUSDeprecated.static StringDEFAULT_PWD_SYMBOLSstatic BenutzerDESIGNER_INITIAL_DUMMYDeprecated.Usevirtual usersstatic BenutzerDESIGNER_LAST_DUMMYDeprecated.Usevirtual usersstatic BenutzerDESIGNER_USERDeprecated.No equivalent, but seeVirtualUserstatic BenutzerSETUPDeprecated.static BenutzerSYSTEMDeprecated.
 - 
Method SummaryAll Methods Static Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static booleancanAccessClient(IUser user, Mandant client)Whether the given user has permission to access the given client.static booleancanAccessInbox(IUser user, Postfach inbox)Whether the user has permission to access the client inbox.static booleancanEditProject(IUser user, Projekt project)Whether or not the given user has permission to edit the given project.static booleancanViewProject(IUser user, Projekt project)Whether the given user has permission to view the given project.static booleancheckPassword(String clearTextPassword, String encryptedPassword)static org.pac4j.core.profile.Genderconvert(EGender gender)Converts the given gender to a pac4jGenderand toGender.UNSPECIFIEDif no match was found ornull.static EGenderconvert(org.pac4j.core.profile.Gender gender)static org.pac4j.core.profile.CommonProfileconvertToProfile(Benutzer user)Deprecated.static StringdfltBgNameFor(ERollenTyp rolle, Locale locale)Deprecated.Is handled inIClientCreateDatastatic StringencPwd(String src)Deprecated.static List<org.passay.CharacterRule>filterCharacterRules(List<org.passay.Rule> rules)static org.passay.LengthRulefilterFirstLengthRules(List<org.passay.Rule> rules)static StringgenPwd()Deprecated.usegenPwd(List)insteadstatic StringgenPwd(List<SystemProperty> pwdPolicyConfig)Generates a password based on the configured system rulesstatic IClientDescriptorgetAuthenticationClientFromAuthenticationAttribute(org.pac4j.core.profile.UserProfile pac4jProfile)Gets the client descriptor of the client that authenticated the user if it has been set in the authentication attributes of the given profile.static StringgetAuthenticationTargetFromAuthenticationAttribute(org.pac4j.core.profile.UserProfile pac4jProfile)Gets the target that the user authenticated for if it has been set in the authentication attributes of the given profile.static BenutzergetBenutzerFromUser(IUser user, Mandant client)Deprecated.static Set<IClientAuthorization>getClientAuthorizationsFromAuthenticationAttribute(org.pac4j.core.profile.UserProfile pac4jProfile)Get the client authorizations of the user if it has been set in the authentication attributes of the given profile.static StringgetClientPermission(Mandant client, IAccessProperty accessProperty)Returns a string value representing the permission within a client (Mandant).static StringgetClientPermission(Mandant client, String permissionName)Returns a string value representing the permission within aclient.static StringgetClientRole(Mandant client, String roleName)Returns a string value representing the role within a client (Mandant).static StringgetClientRole(Rolle role)Returns a string value representing the role within a client (Mandant).static BenutzergetFromProfile(org.pac4j.core.profile.CommonProfile profile)Deprecated.static StringgetGeneralPermission(IAccessProperty accessProperty)Returns a string value representing the permission for the general scope.static StringgetGeneralPermission(String permissionName)Returns a string value representing the permission for the general scope.static DirectClientAuthorizationgetInvitationClientAuthorizationFromAuthenticationAttribute(org.pac4j.core.profile.UserProfile pac4jProfile)Gets the invitation client authorization if it has been set in the authentication attributes of the given pac4j profile.static StringgetMaskedEmailAddress(String email)Masks the email address for privacy purposes.static StringgetMaskedName(String name)Masks the user name for privacy purposes.static StringgetMaskedUserAttribute(String value)Masks the given user attribute (e.g.static List<org.passay.Rule>getPasswordRules(List<SystemProperty> pwdPolicyConfig, boolean useDefaultForGen)Determines the password policy rules set from the persisted system configuration.static intgetPasswordStrength(String newPassword, List<org.passay.Rule> rules)Calculates the password-strength for password ui components.static Set<String>getPermissionsFromAuthenticationAttribute(org.pac4j.core.profile.UserProfile pac4jProfile)Gets the permissions if they have been set in the authentication attributes of the given pac4j profile.static com.alibaba.fastjson.JSONObjectgetRawData(org.pac4j.core.profile.UserProfile userProfile)static StringgetSystemPermission(IAccessProperty accessProperty)Returns a string value representing the permission forsystemscope.static StringgetSystemPermission(String permissionName)Returns a string value representing the permission forsystemscope.static longgetTimeStamp(long addHours, long addMinutes)Deprecated.Token duration for password set/reset mails is handled in UserMailUtil.static StringgetUniversalReferenceId(IUserIdentity identity)Returns the universal reference ID of the user.static StringgetUniversalReferenceId(EHashAlgorithm hashAlgorithm, IUserIdentity identity)Returns the universal reference ID of the user using the given hash algorithm.static StringgetUniversalReferenceId(EHashAlgorithm hashAlgorithm, String clientName, String profileId)Returns the universal reference ID of the user.static StringgetUniversalReferenceId(EHashAlgorithm hashAlgorithm, org.pac4j.core.profile.UserProfile profile)Returns the universal reference ID of the user.static StringgetUniversalReferenceId(org.pac4j.core.profile.UserProfile profile)Returns the universal reference ID of the user.static StringgetUniversalReferenceIdClientPrefix(IClientDescriptor descriptor)Returns the prefix of the authentication client for creating the universal reference ID for a user.static StringgetUniversalReferenceIdClientPrefix(String clientName)Returns the prefix of the authentication client for creating the universal reference ID for a user.static UserProfilegetUserProfileFromAuthenticationAttribute(org.pac4j.core.profile.UserProfile pac4jProfile)Gets the formcycle profile if it has been set in the authentication attributes of the given pac4j profile.static StringgetUserProfileHash(EHashAlgorithm hashAlgorithm, String clientName, String profileId)Calculates the hash digest for the user profile defined by the given client name and profile ID using the given hash algorithm.static StringgetUserProfileHash(EHashAlgorithm hashAlgorithm, org.pac4j.core.profile.UserProfile profile)Calculates the hash digest for the given user profile using the given hash algorithm.static booleanhasBackendAccess(IClientAuthorization authorization)If the given client authorization grants users access to the formcycle backend.static booleanhasBackendAccess(IUser user)Checks if the user has permission to access to the formcycle backend.static booleanhasDesignerAccess(IClientAuthorization authorization)Returns whether or not the given client authorization grants designer access.static StringhashPassword(String clearTextPassword)Paswort-Encryption.static booleanhasInboxAccess(IClientAuthorization authorization)Returns whether or not the given client authorization grants inbox access.static booleanisActive(IClientAuthorization authorization)Checks if the given client authorization is active.static booleanisAnonymousUser(Benutzer user)Deprecated.static booleanisAnonymousUser(IUser user)Checks if the user is anonymous.static booleanisAuthenticatedFor(IUser user, String authTarget)checks if the user has been authenticated for the given authentication target.static booleanisBackendAccessCapable(IClientAuthorization authorization)Returns if the given client authorization is capable of allowing users access to the formcycle backend.static booleanisClientAdmin(UserProfile profile, Mandant client)Returns true if given profile has a role of a MANDANT_ADMINstatic booleanisClientAdmin(IClientAuthorization authorization)Returns true if given authorization has a role of a MANDANT_ADMINstatic booleanisClientAdmin(IUser user, Mandant client)Checks if the user is an admin of the given client.static booleanisExpired(IEntityClientAuthorization authorization)Checks if the given client authorization is expired (right now).static booleanisExternalUser(Benutzer user)Deprecated.static booleanisInternalUser(Benutzer user)Deprecated.Not neede anymore.static booleanisInvitationExpired(IEntityClientAuthorization authorization)Checks if the invitation attached to the given client authorization is expired (right now).static booleanisInvitedUser(IUser user)static booleanisInvitedUser(org.pac4j.core.profile.UserProfile pac4jProfile)static booleanisSetupUser(Benutzer user)Deprecated.UseisSuperUser(IUser)instead.static booleanisSetupUserWithClient(Benutzer user, javax.servlet.http.HttpSession session)Deprecated.static booleanisSetupUserWithoutClient(Benutzer user, javax.servlet.http.HttpSession session)Deprecated.static booleanisSuperUser(IUser user)Checks if the user is THE super user.static booleanisSystemAdmin(UserProfile profile)Checks if the user of the given profile is a system admin.static booleanisSystemAdmin(IUser user)Checks if the user is a system admin.static booleanisSystemUser(Benutzer user)Deprecated.Not needed anymore.static booleanisUser(IEntityClientAuthorization authorization, IUser user)Checks whether the given client authorization applies to the given user.static booleanisUser(IUserIdentity identity, IUser user)Checks whether the given user identity is the identity of the given user.static booleanisUser(UserProfile profile, IUser user)Checks whether the given user profile is the user profile of the given user.static org.pac4j.core.profile.AnonymousProfilenewAnonymousProfile()static voidsetAuthenticationTargetInAuthenticationAttributes(org.pac4j.core.profile.UserProfile pac4jProfile, IAuthenticationTarget target)Sets the given authentication target in the authentication attributes of the profile.static com.alibaba.fastjson.JSONObjecttoJson(IUser user)static com.alibaba.fastjson.JSONObjecttoJson(IUser user, Mandant client)static com.alibaba.fastjson.JSONObjecttoJSON(Benutzer user, List<BenutzerGruppe> userGroups)Deprecated.UsetoJson(IUser, Mandant)instead.static com.alibaba.fastjson.JSONObjecttoJSON(Benutzer user, List<BenutzerGruppe> userGroups, org.pac4j.core.profile.CommonProfile prof)Deprecated.UsetoJson(IUser, Mandant)instead.static PasswordValidationResultvalidatePassword(String userName, String oldPassword, String newPassword, List<SystemProperty> systemConfig)Validates Passwordsstatic PasswordValidationResultvalidatePassword(String oldPassword, String newPassword, List<SystemProperty> systemConfig)Validates Passwordsstatic PasswordValidationResultvalidatePassword(String password, List<SystemProperty> systemConfig)Validates Passwords
 
- 
- 
- 
Field Detail- 
DEFAULT_PWD_SYMBOLSpublic static final String DEFAULT_PWD_SYMBOLS - See Also:
- Constant Field Values
 
 - 
ANONYMOUS@Deprecated public static final Benutzer ANONYMOUS Deprecated.Virtueller Benutzer für Fälle, bei denen ein Benutzer benötigt wird, aber keine Anmeldungen notwendig ist.
 - 
SYSTEM@Deprecated public static final Benutzer SYSTEM Deprecated.Virtueller Benutzer für Fälle, bei denen ein Benutzer benötigt wird, aber keine Anmeldungen notwendig ist.
 - 
SETUP@Deprecated public static final Benutzer SETUP Deprecated.Virtueller Benutzer für Fälle, bei denen ein Benutzer benötigt wird, aber keine Anmeldungen notwendig ist.
 - 
DESIGNER_USER@Deprecated public static final Benutzer DESIGNER_USER Deprecated.No equivalent, but seeVirtualUserVirtueller Benutzer für Fälle, bei denen ein Benutzer benötigt wird, aber keine Anmeldungen notwendig ist.
 - 
DESIGNER_LAST_DUMMY@Deprecated public static final Benutzer DESIGNER_LAST_DUMMY Deprecated.Usevirtual usersVirtueller Benutzer für Fälle, bei denen ein Benutzer benötigt wird, aber keine Anmeldungen notwendig ist.
 - 
DESIGNER_INITIAL_DUMMY@Deprecated public static final Benutzer DESIGNER_INITIAL_DUMMY Deprecated.Usevirtual usersVirtueller Benutzer für Fälle, bei denen ein Benutzer benötigt wird, aber keine Anmeldungen notwendig ist.
 
- 
 - 
Method Detail- 
canEditProjectpublic static boolean canEditProject(IUser user, Projekt project) Whether or not the given user has permission to edit the given project.- Parameters:
- user- to check for
- project- to check
- Returns:
- trueif the user has permission to edit the project and- falseotherwise.
 
 - 
canViewProjectpublic static boolean canViewProject(IUser user, Projekt project) Whether the given user has permission to view the given project.- Parameters:
- user- to check for
- project- to check
- Returns:
- trueif the user has permission to view the project and- falseotherwise.
 
 - 
canAccessClientpublic static boolean canAccessClient(IUser user, Mandant client) Whether the given user has permission to access the given client.- Parameters:
- user- to check for
- client- to check
- Returns:
- trueif the user has permission to access the given client and- falseotherwise.
 
 - 
canAccessInboxpublic static boolean canAccessInbox(IUser user, Postfach inbox) Whether the user has permission to access the client inbox. Note: This check does not take into account whether the user has therole permission to access the inbox UI.- Parameters:
- user- to check for
- inbox- to check
- Returns:
- trueif the user has permission to access the given client inbox and- falseotherwise.
 
 - 
isClientAdminpublic static boolean isClientAdmin(UserProfile profile, Mandant client) Returns true if given profile has a role of a MANDANT_ADMIN- Parameters:
- profile- to check
- Returns:
- false if no admin role found
 
 - 
isClientAdminpublic static boolean isClientAdmin(IClientAuthorization authorization) Returns true if given authorization has a role of a MANDANT_ADMIN- Parameters:
- authorization- direct or indirect authorization
- Returns:
- false if no admin role found
 
 - 
isClientAdminpublic static boolean isClientAdmin(IUser user, Mandant client) Checks if the user is an admin of the given client.- Parameters:
- user- to check for
- client- to check
- Returns:
- trueif the user is an admin of the given client and- falseotherwise.
 
 - 
isSystemAdminpublic static boolean isSystemAdmin(UserProfile profile) Checks if the user of the given profile is a system admin. System admins have permission to access/edit the system settings.- Parameters:
- profile- to check
- Returns:
- trueif the user of the given profile is a system admin and- falseotherwise.
 
 - 
isSystemAdminpublic static boolean isSystemAdmin(IUser user) Checks if the user is a system admin. System admins have permission to access/edit the system settings.- Parameters:
- user- A user to check.
- Returns:
- trueif the user is a system admin and- falseotherwise.
 
 - 
isSuperUserpublic static boolean isSuperUser(IUser user) Checks if the user is THE super user. There is only one super user (sadmin) in the system.- Parameters:
- user- to check
- Returns:
- trueif the given user is the super user and- falseotherwise.
 
 - 
isAnonymousUserpublic static boolean isAnonymousUser(IUser user) Checks if the user is anonymous.- Parameters:
- user- to check
- Returns:
- trueif the user is an anonymous user and- falseotherwise.
 
 - 
isBackendAccessCapablepublic static boolean isBackendAccessCapable(IClientAuthorization authorization) Returns if the given client authorization is capable of allowing users access to the formcycle backend. This does not mean that the authorization actually allows backend access. If you want to find if an authorization grants backend access usehasBackendAccess(IClientAuthorization)instead.- Parameters:
- authorization- to check.
- Returns:
- trueif the authorization is capable of allowing users access to the formcycle backend.- falseotherwise.
 
 - 
isUserpublic static boolean isUser(IEntityClientAuthorization authorization, IUser user) Checks whether the given client authorization applies to the given user.- Parameters:
- authorization- to check.
- user- to check if the client authorization applies.
- Returns:
- trueif the given client authorization applies to the given user and- falseotherwise.
 
 - 
isUserpublic static boolean isUser(UserProfile profile, IUser user) Checks whether the given user profile is the user profile of the given user.- Parameters:
- profile- to check.
- user- to check if the user profile is their user profile.
- Returns:
- trueif the given user profile is the user profile of the given user and- falseotherwise.
 
 - 
isUserpublic static boolean isUser(IUserIdentity identity, IUser user) Checks whether the given user identity is the identity of the given user.- Parameters:
- identity- to check.
- user- to check if their identity is the given user identity.
- Returns:
- trueif the given user identity is the identity of the given user and- falseotherwise.
 
 - 
isActivepublic static boolean isActive(IClientAuthorization authorization) Checks if the given client authorization is active. If the attached user profile is inactive then the client authorization can't be active.- Parameters:
- authorization- to check.
- Returns:
- trueif the given client authorization is active and- falseotherwise.
 
 - 
isExpiredpublic static boolean isExpired(IEntityClientAuthorization authorization) Checks if the given client authorization is expired (right now).- Parameters:
- authorization- to check.
- Returns:
- trueif the given client authorization is expired and- falseotherwise.
 
 - 
isInvitationExpiredpublic static boolean isInvitationExpired(IEntityClientAuthorization authorization) Checks if the invitation attached to the given client authorization is expired (right now).- Parameters:
- authorization- to check.
- Returns:
- trueif the invitation to the given client authorization is expired and- falseotherwise.
 
 - 
isAuthenticatedForpublic static boolean isAuthenticatedFor(IUser user, String authTarget) checks if the user has been authenticated for the given authentication target.- Parameters:
- user- to check.
- authTarget- to check. User can authenticated for different authentication targets, e.g. "- backend", "- form", ...
- Returns:
- trueif the user has been authenticated for the given authentication target and- falseotherwise.
- Throws:
- IllegalArgumentException- if a blank authentication target is given.
 
 - 
isInvitedUserpublic static boolean isInvitedUser(IUser user) 
 - 
isInvitedUserpublic static boolean isInvitedUser(org.pac4j.core.profile.UserProfile pac4jProfile) 
 - 
hasBackendAccesspublic static boolean hasBackendAccess(IUser user) Checks if the user has permission to access to the formcycle backend.- Parameters:
- user- to check
- Returns:
- trueif the user has permission to access the formcycle backend and- falseotherwise.
 
 - 
hasBackendAccesspublic static boolean hasBackendAccess(IClientAuthorization authorization) If the given client authorization grants users access to the formcycle backend.- Parameters:
- authorization- to check
- Returns:
- trueif the client authorization grants users access to the formcycle backend and- falseotherwise.
 
 - 
hasInboxAccesspublic static boolean hasInboxAccess(IClientAuthorization authorization) Returns whether or not the given client authorization grants inbox access.- Parameters:
- authorization- to check
- Returns:
- trueif the authorization grants inbox access and- falseotherwise.
 
 - 
hasDesignerAccesspublic static boolean hasDesignerAccess(IClientAuthorization authorization) Returns whether or not the given client authorization grants designer access.- Parameters:
- authorization- to check
- Returns:
- trueif the authorization grants designer access and- falseotherwise.
 
 - 
setAuthenticationTargetInAuthenticationAttributespublic static void setAuthenticationTargetInAuthenticationAttributes(org.pac4j.core.profile.UserProfile pac4jProfile, IAuthenticationTarget target)Sets the given authentication target in the authentication attributes of the profile.- Parameters:
- pac4jProfile- to set authentication target for.
- target- to set.
 
 - 
getAuthenticationTargetFromAuthenticationAttributepublic static String getAuthenticationTargetFromAuthenticationAttribute(org.pac4j.core.profile.UserProfile pac4jProfile) Gets the target that the user authenticated for if it has been set in the authentication attributes of the given profile.- Parameters:
- pac4jProfile- to get the authentication client descriptor for
- Returns:
- the authentication client descriptor if it has been set and nullotherwise.
 
 - 
getAuthenticationClientFromAuthenticationAttributepublic static IClientDescriptor getAuthenticationClientFromAuthenticationAttribute(org.pac4j.core.profile.UserProfile pac4jProfile) Gets the client descriptor of the client that authenticated the user if it has been set in the authentication attributes of the given profile.- Parameters:
- pac4jProfile- to get the authentication client descriptor for
- Returns:
- the authentication client descriptor if it has been set and nullotherwise.
 
 - 
getClientAuthorizationsFromAuthenticationAttributepublic static Set<IClientAuthorization> getClientAuthorizationsFromAuthenticationAttribute(org.pac4j.core.profile.UserProfile pac4jProfile) Get the client authorizations of the user if it has been set in the authentication attributes of the given profile.- Parameters:
- pac4jProfile- to get the client authorizations for.
- Returns:
- the client authorizations if it has been set and nullotherwise.
 
 - 
getUserProfileFromAuthenticationAttributepublic static UserProfile getUserProfileFromAuthenticationAttribute(org.pac4j.core.profile.UserProfile pac4jProfile) Gets the formcycle profile if it has been set in the authentication attributes of the given pac4j profile.- Parameters:
- pac4jProfile- to get the formcycle profile for
- Returns:
- the formcycle profile if it has been set and nullotherwise.
 
 - 
getPermissionsFromAuthenticationAttributepublic static Set<String> getPermissionsFromAuthenticationAttribute(org.pac4j.core.profile.UserProfile pac4jProfile) Gets the permissions if they have been set in the authentication attributes of the given pac4j profile.- Parameters:
- pac4jProfile- to get the permissions for.
- Returns:
- the permissions if they have been set in and nullotherwise.
 
 - 
getInvitationClientAuthorizationFromAuthenticationAttributepublic static DirectClientAuthorization getInvitationClientAuthorizationFromAuthenticationAttribute(org.pac4j.core.profile.UserProfile pac4jProfile) Gets the invitation client authorization if it has been set in the authentication attributes of the given pac4j profile. Seeherefor more information about what invitation client authorizations are used for.- Parameters:
- pac4jProfile- to get the invitation client authorization for.
- Returns:
- the invitation client authorization if it has been set in and nullotherwise.
- See Also:
- CmnConst.Security.Authorization.AUTHENTICATION_ATTR_CLIENT_INVITATION_UUID
 
 - 
getUniversalReferenceIdpublic static String getUniversalReferenceId(org.pac4j.core.profile.UserProfile profile) Returns the universal reference ID of the user. The universal reference ID is unique for every user within the system across all authenticators if it is a uniquely identifiable user. SeegetUniversalReferenceId(EHashAlgorithm, String, String)for universal reference ID format.- Parameters:
- profile- to get the universal reference ID for
- Returns:
- the universal reference ID of the profile.
 
 - 
getUniversalReferenceIdpublic static String getUniversalReferenceId(EHashAlgorithm hashAlgorithm, org.pac4j.core.profile.UserProfile profile) Returns the universal reference ID of the user. The universal reference ID is unique for every user within the system across all authenticators if it is a uniquely identifiable user. SeegetUniversalReferenceId(EHashAlgorithm, String, String)for universal reference ID format.- Parameters:
- hashAlgorithm- the algorithm to be used for calculating the hash digest for a user profile. If no hash algorithm is given, the- default user profile hash algorithmwill be used.
- profile- to get the universal reference ID for
- Returns:
- the universal reference ID of the profile.
 
 - 
getUniversalReferenceIdpublic static String getUniversalReferenceId(IUserIdentity identity) Returns the universal reference ID of the user. The universal reference ID is unique for every user within the system across all authenticators if it is a uniquely identifiable user. SeegetUniversalReferenceId(EHashAlgorithm, String, String)for universal reference ID format.- Parameters:
- identity- to get the universal reference ID for
- Returns:
- the universal reference ID of the identity.
 
 - 
getUniversalReferenceIdpublic static String getUniversalReferenceId(EHashAlgorithm hashAlgorithm, IUserIdentity identity) Returns the universal reference ID of the user using the given hash algorithm. The universal reference ID is unique for every user within the system across all authenticators if it is a uniquely identifiable user. SeegetUniversalReferenceId(EHashAlgorithm, String, String)for universal reference ID format.- Parameters:
- hashAlgorithm- the algorithm to be used for calculating the hash digest for a user profile. If no hash algorithm is given, the- default user profile hash algorithmwill be used.
- identity- to get the universal reference ID for
- Returns:
- the universal reference ID of the identity.
 
 - 
getUniversalReferenceIdpublic static String getUniversalReferenceId(EHashAlgorithm hashAlgorithm, String clientName, String profileId) Returns the universal reference ID of the user. The universal reference ID is unique for every user within the system across all authenticators if it is a uniquely identifiable user. Anonymous users or users that authenticate via a group password can't be uniquely identified. There are a few users which have special universal reference IDs (see below). All other users follow a general format for their universal reference ID.Universal reference ID format for general users: < Authenticator client name>#<Hash algorithm ID>#<profile identification hash>- Authenticator client name
- The client name of an authenticator client, which can be retrieved by calling
 IClientDescriptor.getClientName(), E.g. "KERBEROS" or the callback UUID for entity authenticators.
- Hash algorithm ID
- An identifier determining the hash algorithm used to calculate the profile hash
- Profile identification hash
- A hash digest representing the user profile. See getUserProfileHash(EHashAlgorithm, UserProfile)for the creation of the user profile hash.
 - Parameters:
- hashAlgorithm- the algorithm to be used for calculating the hash digest for a user profile. If no hash algorithm is given, the- default user profile hash algorithmwill be used.
- clientName- describes the authentication client that is used to authenticate the user
- profileId- ID of the authenticated user within the authentication client
- Returns:
- the universal reference ID of the user
 
 - 
getUniversalReferenceIdClientPrefixpublic static String getUniversalReferenceIdClientPrefix(IClientDescriptor descriptor) Returns the prefix of the authentication client for creating the universal reference ID for a user. SeegetUniversalReferenceId(EHashAlgorithm, String, String)for universal reference ID format.- Parameters:
- descriptor- describes the authentication client that is used to authenticate the user.
- Returns:
- the prefix of the authentication client for creating the universal reference ID for a user.
 
 - 
getUniversalReferenceIdClientPrefixpublic static String getUniversalReferenceIdClientPrefix(String clientName) Returns the prefix of the authentication client for creating the universal reference ID for a user. SeegetUniversalReferenceId(EHashAlgorithm, String, String)for universal reference ID format.- Parameters:
- clientName- describes the authentication client that is used to authenticate the user.
- Returns:
- the prefix of the authentication client for creating the universal reference ID for a user.
 
 - 
getUserProfileHashpublic static String getUserProfileHash(EHashAlgorithm hashAlgorithm, org.pac4j.core.profile.UserProfile profile) Calculates the hash digest for the given user profile using the given hash algorithm.- Parameters:
- hashAlgorithm- the algorithm to be used for calculating the hash digest for a user profile. If no hash algorithm is given, the- default user profile hash algorithmwill be used.
- profile- the user profile to be hashed.
- Returns:
- the hash digest for the user profile.
- Throws:
- NullPointerException- if no user profile was given.
 
 - 
getUserProfileHashpublic static String getUserProfileHash(EHashAlgorithm hashAlgorithm, String clientName, String profileId) Calculates the hash digest for the user profile defined by the given client name and profile ID using the given hash algorithm.- Parameters:
- hashAlgorithm- the algorithm to be used for calculating the hash digest for a user profile. If no hash algorithm is given, the- default user profile hash algorithmwill be used.
- clientName- the client name of the authenticator (the authenticator callback UUID for entity authenticators).
- profileId- the ID of the user profile within an IDP.
- Returns:
- the hash digest for the user profile defined by the client name and profile ID.
- Throws:
- IllegalArgumentException- if no client name or profile ID were given.
 
 - 
getClientRolepublic static String getClientRole(Rolle role) Returns a string value representing the role within a client (Mandant). For more information about the format of the scoped role value seegetClientRole(Mandant, String).- Parameters:
- role- to get the scoped role value for
- Returns:
- a scoped string value representing the role within a client.
 
 - 
getClientRolepublic static String getClientRole(Mandant client, String roleName) Returns a string value representing the role within a client (Mandant). Format of the string value:<client UUID>#<Role name> - Parameters:
- client- to scope role name to
- roleName- to scope
- Returns:
- a scoped string value representing the role within a client.
 
 - 
getClientPermissionpublic static String getClientPermission(Mandant client, IAccessProperty accessProperty) Returns a string value representing the permission within a client (Mandant). For more information about the format of the scoped value seegetClientPermission(Mandant, String).- Parameters:
- client- to scope permission to
- accessProperty- to get a scoped permission value for
- Returns:
- a scoped string value representing the permission within a client.
 
 - 
getClientPermissionpublic static String getClientPermission(Mandant client, String permissionName) Returns a string value representing the permission within aclient. Format of the string value:<client UUID>#<permission name> - Parameters:
- client- to scope permission to
- permissionName- to get a scoped permission value for
- Returns:
- a scoped string value representing the permission within a client.
 
 - 
getSystemPermissionpublic static String getSystemPermission(IAccessProperty accessProperty) Returns a string value representing the permission forsystemscope. For more information about the format of the scoped value seegetSystemPermission(String).- Parameters:
- accessProperty- to get a scoped permission value for
- Returns:
- a scoped string value representing the permission for the systemscope.
 
 - 
getSystemPermissionpublic static String getSystemPermission(String permissionName) Returns a string value representing the permission forsystemscope. Format of the string value:SYSTEM#<permission name> - Parameters:
- permissionName- to get a scoped permission value for
- Returns:
- a scoped string value representing the permission for the systemscope.
 
 - 
getGeneralPermissionpublic static String getGeneralPermission(IAccessProperty accessProperty) Returns a string value representing the permission for the general scope.- Parameters:
- accessProperty- to get a permission value for.
- Returns:
- a string value representing the permission for the general scope.
 
 - 
getGeneralPermissionpublic static String getGeneralPermission(String permissionName) Returns a string value representing the permission for the general scope.- Parameters:
- permissionName- to get a permission value for.
- Returns:
- a string value representing the permission for the general scope.
 
 - 
convertpublic static EGender convert(org.pac4j.core.profile.Gender gender) - Parameters:
- gender- to convert
- Returns:
- converted gender
 
 - 
convertpublic static org.pac4j.core.profile.Gender convert(EGender gender) Converts the given gender to a pac4jGenderand toGender.UNSPECIFIEDif no match was found ornull.- Parameters:
- gender- to convert
- Returns:
- converted gender
 
 - 
genPwdpublic static String genPwd(List<SystemProperty> pwdPolicyConfig) Generates a password based on the configured system rules- Parameters:
- pwdPolicyConfig- pwdPolicyConfig a- Listof- SystemPropertys which specify the password policy rules
- Returns:
- a generated Password
 
 - 
getPasswordStrengthpublic static int getPasswordStrength(String newPassword, List<org.passay.Rule> rules) Calculates the password-strength for password ui components. The ranges for levels in the ui component are:- 0,29: Weak
- 30,79: Medium
- 80,100: Strong
 - Parameters:
- newPassword- the password to calculate the strength of
- rules- a list of system properties which specify the password policy rules
- Returns:
- Double
 
 - 
checkPasswordpublic static boolean checkPassword(String clearTextPassword, String encryptedPassword) 
 - 
validatePasswordpublic static PasswordValidationResult validatePassword(String password, List<SystemProperty> systemConfig) Validates Passwords- Parameters:
- password- the new password
- systemConfig- list with system properties, which defines the use password policy rules if list is null or empty, the system defined default password policy rules will be used
- Returns:
- PasswordValidationResultwith validation-status and errors
 
 - 
validatePasswordpublic static PasswordValidationResult validatePassword(String oldPassword, String newPassword, List<SystemProperty> systemConfig) Validates Passwords- Parameters:
- oldPassword- old passwords which should be permitted to use again. May be- nullor empty.
- newPassword- the new password
- systemConfig- list with system properties, which defines the use password policy rules if list is null or empty, the system defined default password policy rules will be used
- Returns:
- PasswordValidationResultwith validation-status and errors
 
 - 
validatePasswordpublic static PasswordValidationResult validatePassword(String userName, String oldPassword, String newPassword, List<SystemProperty> systemConfig) Validates Passwords- Parameters:
- userName- name of the user to permit passwords with username. May be- nullor empty.
- oldPassword- old passwords which should be permitted to use again. May be- nullor empty.
- newPassword- the new password
- systemConfig- list with system properties, which defines the use password policy rules if list is null or empty, the system defined default password policy rules will be used
- Returns:
- PasswordValidationResultwith validation-status and errors
 
 - 
getMaskedUserAttributepublic static String getMaskedUserAttribute(String value) - Parameters:
- value- user attribute value that is to be masked.
- Returns:
- the masked user attribute.
 
 - 
getMaskedNamepublic static String getMaskedName(String name) Masks the user name for privacy purposes. E.g.: "Joe Average" becomes "Jo**** Av****".- Parameters:
- name- to be masked
- Returns:
- the masked name
 
 - 
getMaskedEmailAddresspublic static String getMaskedEmailAddress(String email) Masks the email address for privacy purposes. E.g.: "joe.average@example.com" becomes "j*****e@example.com".- Parameters:
- email- to be masked
- Returns:
- the masked email
- Throws:
- IllegalArgumentException- if the given string is not an email.
 
 - 
getPasswordRulespublic static List<org.passay.Rule> getPasswordRules(List<SystemProperty> pwdPolicyConfig, boolean useDefaultForGen) Determines the password policy rules set from the persisted system configuration. The persisted system configuration comes within the given systemConfig list.- Parameters:
- pwdPolicyConfig- List of- SystemPropertys
- useDefaultForGen- Flag for use functionality in password generation. If no rules configured (in system properties or pre default) the rules 'ALPABETICAL' and 'DIGITS' will be returned.
- Returns:
- list of password policy Rules
 
 - 
filterCharacterRulespublic static List<org.passay.CharacterRule> filterCharacterRules(List<org.passay.Rule> rules) 
 - 
filterFirstLengthRulespublic static org.passay.LengthRule filterFirstLengthRules(List<org.passay.Rule> rules) 
 - 
newAnonymousProfilepublic static org.pac4j.core.profile.AnonymousProfile newAnonymousProfile() 
 - 
toJsonpublic static com.alibaba.fastjson.JSONObject toJson(IUser user) 
 - 
getRawDatapublic static com.alibaba.fastjson.JSONObject getRawData(org.pac4j.core.profile.UserProfile userProfile) 
 - 
getBenutzerFromUser@Deprecated public static Benutzer getBenutzerFromUser(IUser user, Mandant client) Deprecated.
 - 
genPwd@Deprecated public static String genPwd() Deprecated.usegenPwd(List)insteadPasswortgenerierung.
 - 
encPwd@Deprecated public static String encPwd(String src) Deprecated.
 - 
getTimeStamp@Deprecated public static long getTimeStamp(long addHours, long addMinutes) Deprecated.Token duration for password set/reset mails is handled in UserMailUtil.Liefert einen Zeitstempel (beginnend vom aktuellen Zeitpunkt) zurück, welcher, um die in den Parametern für Stunden und Minuten enthalten Werte, erweitert wurde.- Parameters:
- addHours- Stunden, die zum aktuellen Zeitpunkt hinzugezählt werden sollen
- addMinutes- Minuten, die zum aktuellen Zeitpunkt hinzugezählt werden sollen
- Returns:
- ein Zeitstempel
 
 - 
dfltBgNameFor@Deprecated public static String dfltBgNameFor(ERollenTyp rolle, Locale locale) Deprecated.Is handled inIClientCreateDataLiefert den lokalisierten Standard-Gruppennamen für Benutzer mit der übergebenen Rolle.- Returns:
- Den Gruppennamen.
 
 - 
isSetupUser@Deprecated public static boolean isSetupUser(Benutzer user) Deprecated.UseisSuperUser(IUser)instead.- Parameters:
- user- User to check.
- Returns:
- trueif the given user is a setup user (sadmin), who can administrate the system.
 
 - 
isSetupUserWithoutClient@Deprecated public static boolean isSetupUserWithoutClient(Benutzer user, javax.servlet.http.HttpSession session) Deprecated.- Parameters:
- user- User to check.
- session- Optional session for retrieving the client.
- Returns:
- trueif the given user is a setup user and has not chosen a client.
 
 - 
isSetupUserWithClient@Deprecated public static boolean isSetupUserWithClient(Benutzer user, javax.servlet.http.HttpSession session) Deprecated.- Parameters:
- user- User to check.
- session- Optional session for retrieving the client.
- Returns:
- trueif the given user is a setup user and has chosen a client.
 
 - 
isSystemUser@Deprecated public static boolean isSystemUser(Benutzer user) Deprecated.Not needed anymore. Check againstVirtualUser.SYSTEMif it is really necessary.
 - 
isAnonymousUser@Deprecated public static boolean isAnonymousUser(Benutzer user) Deprecated.
 - 
isInternalUser@Deprecated public static boolean isInternalUser(Benutzer user) Deprecated.Not neede anymore.Method do determine if the given user is an internal and virtual user likeSETUP,ANONYMOUSorSYSTEM- Parameters:
- user- the user to check
- Returns:
- trueif the user is internal,- falseotherwise
 
 - 
isExternalUser@Deprecated public static boolean isExternalUser(Benutzer user) Deprecated.
 - 
convertToProfile@Deprecated public static org.pac4j.core.profile.CommonProfile convertToProfile(Benutzer user) Deprecated.
 - 
getFromProfile@Deprecated public static Benutzer getFromProfile(org.pac4j.core.profile.CommonProfile profile) Deprecated.
 - 
toJSON@Deprecated public static com.alibaba.fastjson.JSONObject toJSON(Benutzer user, List<BenutzerGruppe> userGroups) Deprecated.UsetoJson(IUser, Mandant)instead.
 - 
toJSON@Deprecated public static com.alibaba.fastjson.JSONObject toJSON(Benutzer user, List<BenutzerGruppe> userGroups, org.pac4j.core.profile.CommonProfile prof) Deprecated.UsetoJson(IUser, Mandant)instead.
 
- 
 
-