From dc52fd5335d6b59be341e4f2f5583651653b309b Mon Sep 17 00:00:00 2001 From: gnaegi <none@none> Date: Tue, 11 Oct 2016 20:38:52 +0200 Subject: [PATCH] OO-2273 check openid provider length --- .../ui/AddOpenIDConnectIFFullConfigurableController.java | 9 +++++++++ .../olat/login/oauth/ui/_i18n/LocalStrings_de.properties | 1 + .../olat/login/oauth/ui/_i18n/LocalStrings_en.properties | 3 ++- 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/olat/login/oauth/ui/AddOpenIDConnectIFFullConfigurableController.java b/src/main/java/org/olat/login/oauth/ui/AddOpenIDConnectIFFullConfigurableController.java index b665cf1285d..336bdd8db75 100644 --- a/src/main/java/org/olat/login/oauth/ui/AddOpenIDConnectIFFullConfigurableController.java +++ b/src/main/java/org/olat/login/oauth/ui/AddOpenIDConnectIFFullConfigurableController.java @@ -19,6 +19,9 @@ */ package org.olat.login.oauth.ui; +import java.util.ArrayList; +import java.util.List; + import org.olat.core.gui.UserRequest; import org.olat.core.gui.components.form.flexible.FormItemContainer; import org.olat.core.gui.components.form.flexible.elements.MultipleSelectionElement; @@ -30,6 +33,7 @@ import org.olat.core.gui.control.Controller; 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.ValidationStatus; import org.olat.login.oauth.OAuthLoginModule; import org.olat.login.oauth.OAuthSPI; import org.springframework.beans.factory.annotation.Autowired; @@ -69,6 +73,8 @@ public class AddOpenIDConnectIFFullConfigurableController extends FormBasicContr openIdConnectIFDefaultEl.addActionListener(FormEvent.ONCHANGE); openIdConnectIFName = uifactory.addTextElement("openidconnectif.name", "openidconnectif.name", 256, "", formLayout); + openIdConnectIFName.setMaxLength(8); + openIdConnectIFName.setRegexMatchCheck("[a-zA-Z0-9._-]{3,8}", "openidconnectif.name.error"); openIdConnectIFDisplayName = uifactory.addTextElement("openidconnectif.displayname", "openidconnectif.displayname", 256, "", formLayout); openIdConnectIFApiKeyEl = uifactory.addTextElement("openidconnectif.id", "openidconnectif.api.id", 256, "", formLayout); @@ -95,6 +101,9 @@ public class AddOpenIDConnectIFFullConfigurableController extends FormBasicContr protected boolean validateFormLogic(UserRequest ureq) { boolean allOk = true; allOk &= validate(openIdConnectIFName); + List<ValidationStatus> nameValidation = new ArrayList<ValidationStatus>(); + openIdConnectIFName.validate(nameValidation); + allOk &= nameValidation.isEmpty(); allOk &= validate(openIdConnectIFDisplayName); allOk &= validate(openIdConnectIFApiKeyEl); allOk &= validate(openIdConnectIFApiSecretEl); diff --git a/src/main/java/org/olat/login/oauth/ui/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/login/oauth/ui/_i18n/LocalStrings_de.properties index dcce2b06681..dbf18748f0e 100644 --- a/src/main/java/org/olat/login/oauth/ui/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/login/oauth/ui/_i18n/LocalStrings_de.properties @@ -55,6 +55,7 @@ openidconnectif.enabled=Open ID Connect openidconnectif.issuer=Issuer openidconnectif.issuer.example=https\://frentix.com openidconnectif.name=Provider name +openidconnectif.name.error=Bitte verwenden Sie nur a-z A-Z 0-9 . - _. Der Name muss mindestens drei und darf maximal 8 Zeichen lange sein. openidconnectif.displayname=Display name openidconnectif.wait.message=Sie werden in wenigen Augenblicken zum OpenOLAT Dienst weitergeleitet. twitter.admin.title=Twitter Konfiguration diff --git a/src/main/java/org/olat/login/oauth/ui/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/login/oauth/ui/_i18n/LocalStrings_en.properties index 67ad49999aa..bf5ec106c22 100644 --- a/src/main/java/org/olat/login/oauth/ui/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/login/oauth/ui/_i18n/LocalStrings_en.properties @@ -54,7 +54,8 @@ openidconnectif.enabled=Open ID Connect openidconnectif.issuer=Issuer openidconnectif.issuer.example=https\://frentix.com openidconnectif.name=Provider name -openidconnectif.displayname=Display name +oopenidconnectif.name.error=Please use only a-z A-Z 0-9 . - _. The name must have at least 3 and a maximum of 8 characters. +penidconnectif.displayname=Display name openidconnectif.wait.message=You will be redirected to OpenOLAT momentarily. twitter.admin.title=Twitter configuration twitter.api.id=Consumer key (App key) -- GitLab