public class ReferencePasswordPolicy extends Object implements PasswordPolicy
DUMMY_ID| Constructor and Description |
|---|
ReferencePasswordPolicy() |
| Modifier and Type | Method and Description |
|---|---|
List<String> |
getPolicyDescription(boolean hasOldPassword)
Returns a list of rules that passwords must follow to satisfy the policy.
|
Collection<WebErrorMessage> |
validatePolicy(ApplicationUser user,
String oldPassword,
String newPassword)
This will be called when a user attempts to change a password.
|
public Collection<WebErrorMessage> validatePolicy(@Nonnull ApplicationUser user, @Nullable String oldPassword, @Nonnull String newPassword)
PasswordPolicyWebErrorMessage will prevent the new password from being accepted.validatePolicy in interface PasswordPolicyuser - the user whose password would be changed. This will never be null, but if the
intent of the request is to create a new user, then the user will not yet exist and
services like the UserManager and ApplicationUsers.from(User) will not
be able to resolve it. The user's
directory ID and ID will be
-1 for this case.oldPassword - the user's existing password, or null if that information is not
available, either because this is a new user or because an administrator is changing
the passwordnewPassword - the user's proposed new passwordWebErrorMessages explaining why the password cannot be acceptedpublic List<String> getPolicyDescription(boolean hasOldPassword)
PasswordPolicygetPolicyDescription in interface PasswordPolicyhasOldPassword - whether or not the request concerns the rules when the old password
is provided. This is true for the case where an existing user is changing
his/her own password, but not when an administrator is changing another user's
password or a new account is getting created. The rule list should probably be
different for these cases. For example, it does not make sense to tell an
administrator that the new password can not be similar to the old password when
the administrator does not even know what the old password was. Nor does it make
sense to say this to a new user, for whom the whole idea is completely irrelevant.Copyright © 2002-2015 Atlassian. All Rights Reserved.