diff options
| author | Thomas Lenz <tlenz@iaik.tugraz.at> | 2014-03-06 09:41:03 +0100 | 
|---|---|---|
| committer | Thomas Lenz <tlenz@iaik.tugraz.at> | 2014-03-06 09:41:03 +0100 | 
| commit | ca6422db1cf8b7bc468b934abdc5d712028d22e0 (patch) | |
| tree | dd11fbf21c997adf6bb9ca1136bfda6bf994ef93 /id | |
| parent | 7d97b32f6b70e83c878cad30cc0d25b2a35b8eed (diff) | |
| parent | feaf4279663ede774e6439f4a48820660e1907b2 (diff) | |
| download | moa-id-spss-ca6422db1cf8b7bc468b934abdc5d712028d22e0.tar.gz moa-id-spss-ca6422db1cf8b7bc468b934abdc5d712028d22e0.tar.bz2 moa-id-spss-ca6422db1cf8b7bc468b934abdc5d712028d22e0.zip | |
Merge remote-tracking branch 'remotes/origin/inbound' into moa2_0_tlenz
Diffstat (limited to 'id')
3 files changed, 13 insertions, 3 deletions
| diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/servlet/PEPSConnectorServlet.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/servlet/PEPSConnectorServlet.java index 8091c5e71..c6cd5cd86 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/servlet/PEPSConnectorServlet.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/servlet/PEPSConnectorServlet.java @@ -68,6 +68,7 @@ import at.gv.util.xsd.xmldsig.X509DataType;  import eu.stork.oasisdss.api.ApiUtils;
  import eu.stork.oasisdss.profile.DocumentWithSignature;
  import eu.stork.oasisdss.profile.SignResponse;
 +import eu.stork.peps.auth.commons.IPersonalAttributeList;
  import eu.stork.peps.auth.commons.PEPSUtil;
  import eu.stork.peps.auth.commons.PersonalAttribute;
  import eu.stork.peps.auth.commons.STORKAuthnRequest;
 @@ -179,7 +180,15 @@ public class PEPSConnectorServlet extends AuthServlet {  			////////////// incorporate gender from parameters if not in stork response
 -			PersonalAttribute gender = authnResponse.getPersonalAttributeList().get("gender");
 +			IPersonalAttributeList attributeList = authnResponse.getPersonalAttributeList();
 +			
 +			// but first, check if we have a representation case
 +			if(STORKResponseProcessor.hasAttribute("mandateContent", attributeList) || STORKResponseProcessor.hasAttribute("representative", attributeList) || STORKResponseProcessor.hasAttribute("represented", attributeList)) {
 +				// in a representation case...
 +				moaSession.setUseMandate("true");
 +				
 +				// and check if we have the gender value
 +			PersonalAttribute gender = attributeList.get("gender");
  			if(null == gender) {
  				String gendervalue = (String) request.getParameter("gender");
  				if(null != gendervalue) {
 @@ -192,6 +201,7 @@ public class PEPSConnectorServlet extends AuthServlet {  					authnResponse.getPersonalAttributeList().add(gender);
  				}
  			}
 +			}
  			//////////////////////////////////////////////////////////////////////////
 diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/stork/STORKResponseProcessor.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/stork/STORKResponseProcessor.java index 57843d0f3..c5f0dbd49 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/stork/STORKResponseProcessor.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/stork/STORKResponseProcessor.java @@ -86,7 +86,7 @@ public class STORKResponseProcessor {  	 * @param attributeList the attribute list
  	 * @return true, if successful
  	 */
 -	private static boolean hasAttribute(String attributeName, IPersonalAttributeList attributeList) {
 +	public static boolean hasAttribute(String attributeName, IPersonalAttributeList attributeList) {
  		try {
  			getAttributeValue(attributeName, attributeList);
  			return true;
 diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/saml1/GetArtifactAction.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/saml1/GetArtifactAction.java index 3f6495a1a..c22f6d25f 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/saml1/GetArtifactAction.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/saml1/GetArtifactAction.java @@ -78,7 +78,7 @@ public class GetArtifactAction implements IAction {  			// add other stork attributes to MOA assertion if available  			if(null != session.getStorkAttributes()) {  				List<ExtendedSAMLAttribute> moaExtendedSAMLAttibutes = STORKResponseProcessor.addAdditionalSTORKAttributes(session.getStorkAttributes()); -				session.setExtendedSAMLAttributesOA(moaExtendedSAMLAttibutes); +				session.getExtendedSAMLAttributesOA().addAll(moaExtendedSAMLAttibutes);  				//produce MOA-Assertion and artifact                      				AuthenticationServer.getInstance().getForeignAuthenticationData(session);  				Logger.info("MOA assertion assembled and SAML Artifact generated."); | 
