diff options
| author | Thomas Lenz <tlenz@iaik.tugraz.at> | 2014-10-24 13:42:13 +0200 | 
|---|---|---|
| committer | Thomas Lenz <tlenz@iaik.tugraz.at> | 2014-10-24 13:42:13 +0200 | 
| commit | 479f2dc2f37b0bcdc9317e6d740d1e173b34bbb4 (patch) | |
| tree | dcff276cc5e9576619b48b147fb315a81a5cb683 | |
| parent | 79867a72c06e4230428d3755509f1bf7b50f9914 (diff) | |
| download | moa-id-spss-479f2dc2f37b0bcdc9317e6d740d1e173b34bbb4.tar.gz moa-id-spss-479f2dc2f37b0bcdc9317e6d740d1e173b34bbb4.tar.bz2 moa-id-spss-479f2dc2f37b0bcdc9317e6d740d1e173b34bbb4.zip | |
update configtool for STORK-PVP gateway configuration
12 files changed, 79 insertions, 12 deletions
| diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/OAListElement.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/OAListElement.java index c4a825589..28eba9f34 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/OAListElement.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/OAListElement.java @@ -24,7 +24,7 @@ package at.gv.egovernment.moa.id.configuration.data;  public class OAListElement { -	public enum ServiceType {OA, VIDP, IDP}  +	public enum ServiceType {OA, VIDP, IDP, GWAY}   	private long dataBaseID;  	private String oaIdentifier; diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OAMOAIDPInterfederationConfig.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OAMOAIDPInterfederationConfig.java index 9431cc1fd..2f9df18aa 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OAMOAIDPInterfederationConfig.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OAMOAIDPInterfederationConfig.java @@ -45,9 +45,11 @@ public class OAMOAIDPInterfederationConfig implements IOnlineApplicationData {  	private static final Logger log = Logger.getLogger(OAMOAIDPInterfederationConfig.class);  	private String queryURL; -	private boolean inboundSSO = true; -	private boolean outboundSSO = true; -	private boolean storeSSOSession = true; +	private Boolean inboundSSO = true; +	private Boolean outboundSSO = true; +	private Boolean storeSSOSession = true; +	private Boolean passiveRequest = true; +	private Boolean localAuthOnError = true;  	/* (non-Javadoc)  	 * @see at.gv.egovernment.moa.id.configuration.data.oa.IOnlineApplicationData#getName() @@ -70,6 +72,8 @@ public class OAMOAIDPInterfederationConfig implements IOnlineApplicationData {  			this.inboundSSO = moaIDP.isInboundSSO();  			this.outboundSSO = moaIDP.isOutboundSSO();  			this.storeSSOSession = moaIDP.isStoreSSOSession(); +			this.localAuthOnError = moaIDP.isPerformLocalAuthenticationOnError(); +			this.passiveRequest = moaIDP.isPerformPassivRequest();  		}  		return null; @@ -95,8 +99,10 @@ public class OAMOAIDPInterfederationConfig implements IOnlineApplicationData {  			moaIDP.setInboundSSO(inboundSSO);  			moaIDP.setOutboundSSO(outboundSSO);  			moaIDP.setStoreSSOSession(storeSSOSession); -		} -		 +			moaIDP.setPerformLocalAuthenticationOnError(localAuthOnError); +			moaIDP.setPerformPassivRequest(passiveRequest); +			 +		}		  		return null;  	} @@ -143,7 +149,7 @@ public class OAMOAIDPInterfederationConfig implements IOnlineApplicationData {  	 * @return the inboundSSO  	 */  	public boolean isInboundSSO() { -		return inboundSSO; +		return inboundSSO.booleanValue();  	}  	/** @@ -157,7 +163,7 @@ public class OAMOAIDPInterfederationConfig implements IOnlineApplicationData {  	 * @return the outboundSSO  	 */  	public boolean isOutboundSSO() { -		return outboundSSO; +		return outboundSSO.booleanValue();  	}  	/** @@ -171,7 +177,7 @@ public class OAMOAIDPInterfederationConfig implements IOnlineApplicationData {  	 * @return the storeSSOSession  	 */  	public boolean isStoreSSOSession() { -		return storeSSOSession; +		return storeSSOSession.booleanValue();  	}  	/** @@ -180,6 +186,34 @@ public class OAMOAIDPInterfederationConfig implements IOnlineApplicationData {  	public void setStoreSSOSession(boolean storeSSOSession) {  		this.storeSSOSession = storeSSOSession;  	} + +	/** +	 * @return the passiveRequest +	 */ +	public boolean isPassiveRequest() { +		return passiveRequest.booleanValue(); +	} + +	/** +	 * @param passiveRequest the passiveRequest to set +	 */ +	public void setPassiveRequest(boolean passiveRequest) { +		this.passiveRequest = passiveRequest; +	} + +	/** +	 * @return the localAuthOnError +	 */ +	public boolean isLocalAuthOnError() { +		return localAuthOnError.booleanValue(); +	} + +	/** +	 * @param localAuthOnError the localAuthOnError to set +	 */ +	public void setLocalAuthOnError(boolean localAuthOnError) { +		this.localAuthOnError = localAuthOnError; +	} diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/PVPGatewayInterfederationConfig.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/PVPGatewayInterfederationConfig.java index d6cbaf952..23af59d8e 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/PVPGatewayInterfederationConfig.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/PVPGatewayInterfederationConfig.java @@ -33,6 +33,7 @@ import at.gv.egovernment.moa.id.commons.db.dao.config.InterfederationGatewayType  import at.gv.egovernment.moa.id.commons.db.dao.config.InterfederationIDPType;  import at.gv.egovernment.moa.id.commons.db.dao.config.OnlineApplication;  import at.gv.egovernment.moa.id.commons.validation.ValidationHelper; +import at.gv.egovernment.moa.id.configuration.Constants;  import at.gv.egovernment.moa.id.configuration.auth.AuthenticatedUser;  import at.gv.egovernment.moa.id.configuration.helper.LanguageHelper;  import at.gv.egovernment.moa.util.MiscUtil; @@ -90,6 +91,7 @@ public class PVPGatewayInterfederationConfig implements IOnlineApplicationData {  			gateway.setForwardIDPIdentifier(entityID);  		} +		dbOA.setType(Constants.MOA_CONFIG_BUSINESSSERVICE);		  		return null;  	} diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/helper/FormDataHelper.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/helper/FormDataHelper.java index dc97dd2c8..150483dd8 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/helper/FormDataHelper.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/helper/FormDataHelper.java @@ -43,6 +43,9 @@ public class FormDataHelper {  			if (dboa.isIsInterfederationIDP()!= null && dboa.isIsInterfederationIDP())  				formOAs.add(addOAFormListElement(dboa, ServiceType.IDP)); +			else if (dboa.isIsInterfederationGateway()!= null && dboa.isIsInterfederationGateway()) +				formOAs.add(addOAFormListElement(dboa, ServiceType.GWAY)); +			  			else if (dboa.getAuthComponentOA().getOASTORK() != null   						&& dboa.getAuthComponentOA().getOASTORK().isVidpEnabled() != null  						&& dboa.getAuthComponentOA().getOASTORK().isVidpEnabled()) diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/InterfederationIDPAction.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/InterfederationIDPAction.java index 589f7d714..d2d318413 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/InterfederationIDPAction.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/InterfederationIDPAction.java @@ -179,6 +179,10 @@ public class InterfederationIDPAction extends BasicOAAction {  					getStorkOA().getAttributeProviderPlugins().add(new AttributeProviderPlugin());  				interfederationType = STRUTS_IDP_VIDP; +			} else if (oa.isIsInterfederationGateway() != null && oa.isIsInterfederationGateway()) {  +				formList.putAll(IDPGatewayAction.buildIDPGatewayFormList()); +				interfederationType = STRUTS_IDP_GATEWAY; +								  			} else {  				log.warn("Requested application is not an interfederation IDP.");  				return Constants.STRUTS_NOTALLOWED; @@ -215,6 +219,7 @@ public class InterfederationIDPAction extends BasicOAAction {  			if ( onlineapplication != null &&   					!((onlineapplication.isIsInterfederationIDP() != null && onlineapplication.isIsInterfederationIDP()) ||  +					(onlineapplication.isIsInterfederationGateway() != null && onlineapplication.isIsInterfederationGateway()) ||							  					(onlineapplication.getAuthComponentOA().getOASTORK() != null   						&& onlineapplication.getAuthComponentOA().getOASTORK().isVidpEnabled() != null  						&& onlineapplication.getAuthComponentOA().getOASTORK().isVidpEnabled()))) {				 diff --git a/id/ConfigWebTool/src/main/resources/applicationResources_de.properties b/id/ConfigWebTool/src/main/resources/applicationResources_de.properties index 02133494f..072f44981 100644 --- a/id/ConfigWebTool/src/main/resources/applicationResources_de.properties +++ b/id/ConfigWebTool/src/main/resources/applicationResources_de.properties @@ -108,9 +108,12 @@ webpages.inderfederation.moaid.inboundSSO=Eingehendes SSO erlauben  webpages.inderfederation.moaid.outboundSSO=Ausgehendes SSO erlauben  webpages.inderfederation.moaid.storeSSOSession=SSO Session speichern  webpages.inderfederation.moaid.attributQueryURL=AttributQuery Service URL +webpages.inderfederation.moaid.sendPassivRequest=Verwende SAML2 isPassive Attribut +webpages.inderfederation.moaid.perfomLocalAuthOnError=Im Fehlerfall Authentifizierung lokal durchf\u00FChren  webpages.interfederation.new.header=Neuen Identity Provider hinzuf\u00FCgen  webpages.interfederation.new.vidp=STORK VIDP  webpages.interfederation.new.moaid=MOA-ID IDP +webpages.interfederation.new.gateway=STORK<->PVP Gateway  webpages.inderfederation.gateway.entityID=EntityID des PVP Portals diff --git a/id/ConfigWebTool/src/main/resources/applicationResources_en.properties b/id/ConfigWebTool/src/main/resources/applicationResources_en.properties index a8c784e1d..b717377e0 100644 --- a/id/ConfigWebTool/src/main/resources/applicationResources_en.properties +++ b/id/ConfigWebTool/src/main/resources/applicationResources_en.properties @@ -108,9 +108,12 @@ webpages.inderfederation.moaid.inboundSSO=Allow inbound SSO  webpages.inderfederation.moaid.outboundSSO=Allow outbound SSO  webpages.inderfederation.moaid.storeSSOSession=Store SSO session  webpages.inderfederation.moaid.attributQueryURL=AttributQuery service URL +webpages.inderfederation.moaid.sendPassivRequest=Use SAML2 isPassive attribute +webpages.inderfederation.moaid.perfomLocalAuthOnError=Local authentication in case of an error  webpages.interfederation.new.header=Add new Identity Provider  webpages.interfederation.new.vidp=STORK VIDP  webpages.interfederation.new.moaid=MOA-ID IDP +webpages.interfederation.new.gateway=STORK<->PVP Gateway  webpages.inderfederation.gateway.entityID=PVP portal EntityID  webpages.moaconfig.save.success=MOA-ID has been successfully saved. diff --git a/id/ConfigWebTool/src/main/resources/struts.xml b/id/ConfigWebTool/src/main/resources/struts.xml index 180877494..f383ad524 100644 --- a/id/ConfigWebTool/src/main/resources/struts.xml +++ b/id/ConfigWebTool/src/main/resources/struts.xml @@ -379,6 +379,7 @@  		<action name="loadIDP" method="loadIDPInformation" class="at.gv.egovernment.moa.id.configuration.struts.action.InterfederationIDPAction">  			<result name="success-VIDP">/jsp/interfederation/vidp.jsp</result>  			<result name="success-MOAIDP">/jsp/interfederation/moa_idp.jsp</result> +			<result name="success-IDPGATEWAY">/jsp/interfederation/pvpgateway.jsp</result>  			<result name="notallowed" type="chain">main</result>  			<result name="error">/error.jsp</result>  			<result name="reauthentication" type="redirectAction"> diff --git a/id/ConfigWebTool/src/main/webapp/jsp/interfederation/idplist.jsp b/id/ConfigWebTool/src/main/webapp/jsp/interfederation/idplist.jsp index 3e7404dfc..ef666b357 100644 --- a/id/ConfigWebTool/src/main/webapp/jsp/interfederation/idplist.jsp +++ b/id/ConfigWebTool/src/main/webapp/jsp/interfederation/idplist.jsp @@ -46,7 +46,11 @@  					<s:form action="newIDP" namespace="/secure" method="POST" >  						<s:hidden name="interfederationType" value="-VIDP"></s:hidden>  						<s:submit key="webpages.interfederation.new.vidp"/> -					</s:form>		 +					</s:form> +					<s:form action="newIDP" namespace="/secure" method="POST" > +						<s:hidden name="interfederationType" value="-IDPGATEWAY"></s:hidden> +						<s:submit key="webpages.interfederation.new.gateway"/> +					</s:form>			  				</div>	 diff --git a/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/interfederation.jsp b/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/interfederation.jsp index 97d21bcb4..b104e0fa7 100644 --- a/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/interfederation.jsp +++ b/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/interfederation.jsp @@ -20,6 +20,16 @@  									labelposition="left"														  									cssClass="checkbox"  									name="moaIDP.storeSSOSession"></s:checkbox> +									 +		<s:checkbox 	key="webpages.inderfederation.moaid.sendPassivRequest" +									labelposition="left"														 +									cssClass="checkbox" +									name="moaIDP.passiveRequest"></s:checkbox>									 + +		<s:checkbox 	key="webpages.inderfederation.moaid.perfomLocalAuthOnError" +									labelposition="left"														 +									cssClass="checkbox" +									name="moaIDP.localAuthOnError"></s:checkbox>									  		<s:textfield name="moaIDP.queryURL"   		 						 value="%{moaIDP.queryURL}"  diff --git a/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/pvpgateway.jsp b/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/pvpgateway.jsp index 8acd725c7..13fc77081 100644 --- a/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/pvpgateway.jsp +++ b/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/pvpgateway.jsp @@ -6,8 +6,8 @@  	<div id="oa_pvp2_area" class="oa_protocol_area">  		<h4><%=LanguageHelper.getGUIString("webpages.inderfederation.moaid.header", request) %></h4> -		<s:textfield name="pvpGateway.entityID"  -		 						 value="%{pvpGateway.entityID}"  +		<s:textfield name="pVPGateway.entityID"  +		 						 value="%{pVPGateway.entityID}"   								 labelposition="left"  								 key="webpages.inderfederation.gateway.entityID"  								 cssClass="textfield_long"> diff --git a/id/server/moa-id-commons/src/main/resources/config/moaid_config_2.0.xsd b/id/server/moa-id-commons/src/main/resources/config/moaid_config_2.0.xsd index 8f2ba1a41..d4686bd5e 100644 --- a/id/server/moa-id-commons/src/main/resources/config/moaid_config_2.0.xsd +++ b/id/server/moa-id-commons/src/main/resources/config/moaid_config_2.0.xsd @@ -491,6 +491,8 @@  		<xsd:sequence>  			<xsd:element name="attributeQueryURL" type="xsd:string" minOccurs="0" maxOccurs="1"/>  			<xsd:element name="storeSSOSession" type="xsd:boolean" default="true" minOccurs="1" maxOccurs="1"/> +			<xsd:element name="performPassivRequest" type="xsd:boolean" default="true" minOccurs="1" maxOccurs="1"/> +			<xsd:element name="performLocalAuthenticationOnError" type="xsd:boolean" default="true" minOccurs="1" maxOccurs="1"/>  		</xsd:sequence>  		<xsd:attribute name="inboundSSO" type="xsd:boolean" default="true"/>  		<xsd:attribute name="outboundSSO" type="xsd:boolean" default="true"/> | 
