diff --git a/src/main/java/org/olat/login/auth/OLATAuthManager.java b/src/main/java/org/olat/login/auth/OLATAuthManager.java index 1b019807cb2869e1a2a69bcf0c070ed4ac998103..c9cb3eca64da588228d96f87cf90f350317b4dbb 100644 --- a/src/main/java/org/olat/login/auth/OLATAuthManager.java +++ b/src/main/java/org/olat/login/auth/OLATAuthManager.java @@ -205,7 +205,7 @@ public class OLATAuthManager implements AuthenticationSPI { } public SyntaxValidator createUsernameSytaxValidator() { - return new SyntaxValidator(usernameRulesFactory.createRules(), false); + return new SyntaxValidator(usernameRulesFactory.createRules(true), false); } diff --git a/src/main/java/org/olat/login/validation/UsernameValidationRulesFactory.java b/src/main/java/org/olat/login/validation/UsernameValidationRulesFactory.java index 78727db8a95d38e1ab4e3660e1beee29096e0313..4710043d036914025653c8dfff26dd9fd38afbf9 100644 --- a/src/main/java/org/olat/login/validation/UsernameValidationRulesFactory.java +++ b/src/main/java/org/olat/login/validation/UsernameValidationRulesFactory.java @@ -39,11 +39,13 @@ public class UsernameValidationRulesFactory { @Autowired private LoginModule loginModule; - public ValidationRulesProvider createRules() { + public ValidationRulesProvider createRules(boolean checkUsernameExists) { ValidationRulesProviderBuilder providerBuilder = new ValidationRulesProviderBuilder(); providerBuilder.add(createUsernameSyntaxRule()); providerBuilder.add(createBlackListRule()); - providerBuilder.add(createUsernameExistsRule()); + if (checkUsernameExists) { + providerBuilder.add(createUsernameExistsRule()); + } return providerBuilder.create(); } diff --git a/src/main/java/org/olat/shibboleth/ShibbolethRegistrationForm.java b/src/main/java/org/olat/shibboleth/ShibbolethRegistrationForm.java index 626f6138bfd6b2ad170dc0b85955459f93029392..43e44caebbf35372ce9a06d118400fa1dae9328d 100644 --- a/src/main/java/org/olat/shibboleth/ShibbolethRegistrationForm.java +++ b/src/main/java/org/olat/shibboleth/ShibbolethRegistrationForm.java @@ -35,8 +35,8 @@ import org.olat.core.gui.control.Event; import org.olat.core.gui.control.WindowControl; import org.olat.core.util.StringHelper; import org.olat.core.util.Util; -import org.olat.login.auth.OLATAuthManager; import org.olat.login.validation.SyntaxValidator; +import org.olat.login.validation.UsernameValidationRulesFactory; import org.olat.login.validation.ValidationResult; import org.olat.user.ChangePasswordForm; import org.springframework.beans.factory.annotation.Autowired; @@ -58,13 +58,13 @@ public class ShibbolethRegistrationForm extends FormBasicController { private final SyntaxValidator usernameSyntaxValidator; @Autowired - private OLATAuthManager olatAuthManager; + private UsernameValidationRulesFactory usernameRulesFactory; public ShibbolethRegistrationForm(UserRequest ureq, WindowControl wControl, String proposedUsername) { super(ureq, wControl); setTranslator(Util.createPackageTranslator(ChangePasswordForm.class, ureq.getLocale(), getTranslator())); this.proposedUsername = proposedUsername; - this.usernameSyntaxValidator = olatAuthManager.createUsernameSytaxValidator(); + this.usernameSyntaxValidator = new SyntaxValidator(usernameRulesFactory.createRules(false), false); initForm(ureq); }