diff options
Diffstat (limited to 'id/server')
3 files changed, 27 insertions, 1 deletions
| diff --git a/id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/protocols/eidas/AuthenticationRequest.java b/id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/protocols/eidas/AuthenticationRequest.java index 68ff0425a..967231110 100644 --- a/id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/protocols/eidas/AuthenticationRequest.java +++ b/id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/protocols/eidas/AuthenticationRequest.java @@ -141,7 +141,9 @@ public class AuthenticationRequest implements IAction {              VelocityEngine velocityEngine = VelocityProvider.getClassPathVelocityEngine();              Template template = velocityEngine.getTemplate("/resources/templates/stork2_postbinding_template.html");              VelocityContext context = new VelocityContext(); -             + +            context.put("RelayState", eidasRequest.getRemoteRelayState()); +              context.put("SAMLResponse", token);              Logger.debug("SAMLResponse original: " + token); diff --git a/id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/protocols/eidas/EIDASData.java b/id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/protocols/eidas/EIDASData.java index 0bedf0432..38a4d8757 100644 --- a/id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/protocols/eidas/EIDASData.java +++ b/id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/protocols/eidas/EIDASData.java @@ -22,6 +22,8 @@ public class EIDASData extends RequestImpl {  	/** The ip address of the requester. */  	private String remoteIPAddress; +	private String remoteRelayState; +  	@Override  	public List<Attribute> getRequestedAttributes() {  		// TODO Auto-generated method stub @@ -81,4 +83,22 @@ public class EIDASData extends RequestImpl {  	public void setRemoteAddress(String remoteIP) {  		remoteIPAddress = remoteIP;  	} + +	/** +	 * Gets the remote relay state. +	 * +	 * @return the remote relay state +	 */ +	public String getRemoteRelayState() { +		return remoteRelayState; +	} + +	/** +	 * Sets the remote relay state. +	 * +	 * @param relayState the new remote relay state +	 */ +	public void setRemoteRelayState(String relayState) { +		remoteRelayState = relayState; +	}  } diff --git a/id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/protocols/eidas/EIDASProtocol.java b/id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/protocols/eidas/EIDASProtocol.java index a94e136b4..072f1661a 100644 --- a/id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/protocols/eidas/EIDASProtocol.java +++ b/id/server/modules/moa-id-module-eIDAS/src/main/java/at/gv/egovernment/moa/id/protocols/eidas/EIDASProtocol.java @@ -107,6 +107,10 @@ public class EIDASProtocol extends MOAIDAuthConstants implements IModulInfo {  			// - memorize remote ip  			result.setRemoteAddress(request.getRemoteAddr()); +			// - memorize relaystate +			String relayState = request.getParameter("RelayState"); +			result.setRemoteRelayState(relayState); +  			// - memorize country code of target country  			result.setTarget(samlReq.getCountry()); | 
