diff options
| author | Thomas Lenz <tlenz@iaik.tugraz.at> | 2017-09-20 12:15:20 +0200 | 
|---|---|---|
| committer | Thomas Lenz <tlenz@iaik.tugraz.at> | 2017-09-20 12:15:20 +0200 | 
| commit | 3c81d3fef06204f2259b6c0377c8a2a00974c614 (patch) | |
| tree | af3f4bf763b113e378bde5a9454023e0ca5c0141 /id/ConfigWebTool/src/main/java/at | |
| parent | 22ccfa1baf256635268a3a65ac59d5a415d19356 (diff) | |
| download | moa-id-spss-3c81d3fef06204f2259b6c0377c8a2a00974c614.tar.gz moa-id-spss-3c81d3fef06204f2259b6c0377c8a2a00974c614.tar.bz2 moa-id-spss-3c81d3fef06204f2259b6c0377c8a2a00974c614.zip | |
make SAML2 http POST-Binding template and mandate-service selection-template configurable for every online application
Diffstat (limited to 'id/ConfigWebTool/src/main/java/at')
2 files changed, 55 insertions, 2 deletions
| diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/FormularCustomization.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/FormularCustomization.java index 80800543b..5ee2ee6a7 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/FormularCustomization.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/FormularCustomization.java @@ -97,6 +97,9 @@ public class FormularCustomization implements IOnlineApplicationData {  	private String aditionalAuthBlockText = null;  	private boolean isHideBPKAuthBlock = false; +	private String saml2PostBindingTemplate = null; +	private String mandateServiceSelectionTemplate = null; +	  	public FormularCustomization() {  		new FormularCustomization(null);  	} @@ -128,6 +131,9 @@ public class FormularCustomization implements IOnlineApplicationData {  	public List<String> parse(OnlineApplication dbOA, AuthenticatedUser authUser, HttpServletRequest request) {  		AuthComponentOA auth = dbOA.getAuthComponentOA(); +		mandateServiceSelectionTemplate = dbOA.getMandateServiceSelectionTemplateURL(); +		saml2PostBindingTemplate = dbOA.getSaml2PostBindingTemplateURL(); +		  		if (dbOA.getAuthComponentOA() != null)  			isHideBPKAuthBlock = dbOA.isRemoveBPKFromAuthBlock(); @@ -243,6 +249,9 @@ public class FormularCustomization implements IOnlineApplicationData {          dbOA.setRemoveBPKFromAuthBlock(isHideBPKAuthBlock()); +        dbOA.setMandateServiceSelectionTemplateURL(mandateServiceSelectionTemplate); +        dbOA.setSaml2PostBindingTemplateURL(saml2PostBindingTemplate); +                  TemplatesType templates = authoa.getTemplates();          if (templates == null) {              templates = new TemplatesType(); @@ -382,6 +391,21 @@ public class FormularCustomization implements IOnlineApplicationData {          } +        check = getSaml2PostBindingTemplate(); +        if (MiscUtil.isNotEmpty(check) && ValidationHelper.isNotValidIdentityLinkSigner(check)	) { +        	log.info("URL to SAML2 POST-Binding template is not valid"); +			errors.add(LanguageHelper.getErrorString("validation.general.templates.saml2.postbinding.valid", request)); +			 +		} +         +        check = getMandateServiceSelectionTemplate(); +        if (MiscUtil.isNotEmpty(check) && ValidationHelper.isNotValidIdentityLinkSigner(check)	) { +        	log.info("URL to mandate-service selection-template is not valid"); +			errors.add(LanguageHelper.getErrorString("validation.general.templates.mandateserviceselection.valid", request)); +			 +		} +         +                  //validate BKUFormCustomization  		errors.addAll(new FormularCustomizationValitator().validate(this, request)); @@ -813,7 +837,36 @@ public class FormularCustomization implements IOnlineApplicationData {  	 */  	public Map<String, String> getFormMap() {  		return map; +	} + +	/** +	 * @return the saml2PostBindingTemplate +	 */ +	public String getSaml2PostBindingTemplate() { +		return saml2PostBindingTemplate; +	} + +	/** +	 * @param saml2PostBindingTemplate the saml2PostBindingTemplate to set +	 */ +	public void setSaml2PostBindingTemplate(String saml2PostBindingTemplate) { +		this.saml2PostBindingTemplate = saml2PostBindingTemplate; +	} + +	/** +	 * @return the mandateServiceSelectionTemplate +	 */ +	public String getMandateServiceSelectionTemplate() { +		return mandateServiceSelectionTemplate; +	} + +	/** +	 * @param mandateServiceSelectionTemplate the mandateServiceSelectionTemplate to set +	 */ +	public void setMandateServiceSelectionTemplate(String mandateServiceSelectionTemplate) { +		this.mandateServiceSelectionTemplate = mandateServiceSelectionTemplate;  	}	 +	  } diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java index 5022be915..539deac9e 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java @@ -44,7 +44,7 @@ import org.apache.velocity.VelocityContext;  import org.apache.velocity.app.VelocityEngine;  import at.gv.egiz.components.configuration.meta.api.ConfigurationStorageException; -import at.gv.egovernment.moa.id.auth.frontend.builder.ServiceProviderSpecificGUIFormBuilderConfiguration; +import at.gv.egovernment.moa.id.auth.frontend.builder.AbstractServiceProviderSpecificGUIFormBuilderConfiguration;  import at.gv.egovernment.moa.id.auth.frontend.utils.FormBuildUtils;  import at.gv.egovernment.moa.id.auth.frontend.velocity.VelocityProvider;  import at.gv.egovernment.moa.id.commons.config.ConfigurationMigrationUtils; @@ -610,7 +610,7 @@ public class BasicOAAction extends BasicAction {                  //set parameters                  Map<String, Object> params =  (Map<String, Object>) mapobj;                  params.put( -                		ServiceProviderSpecificGUIFormBuilderConfiguration.PARAM_AUTHCONTEXT,  +                		AbstractServiceProviderSpecificGUIFormBuilderConfiguration.PARAM_AUTHCONTEXT,                   		contextpath);                  request.setCharacterEncoding("UTF-8"); | 
