You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@syncope.apache.org by fm...@apache.org on 2017/11/21 15:13:20 UTC

syncope git commit: provides support for saml attribute type any (not just string)

Repository: syncope
Updated Branches:
  refs/heads/2_0_X 48ae5566d -> de73cb89f


provides support for saml attribute type any (not just string)


Project: http://git-wip-us.apache.org/repos/asf/syncope/repo
Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/de73cb89
Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/de73cb89
Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/de73cb89

Branch: refs/heads/2_0_X
Commit: de73cb89f71a44fa1f268517a7d38105d68398b1
Parents: 48ae556
Author: fmartelli <fa...@gmail.com>
Authored: Tue Nov 21 16:13:00 2017 +0100
Committer: fmartelli <fa...@gmail.com>
Committed: Tue Nov 21 16:13:00 2017 +0100

----------------------------------------------------------------------
 .../org/apache/syncope/core/logic/SAML2SPLogic.java     | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/syncope/blob/de73cb89/ext/saml2sp/logic/src/main/java/org/apache/syncope/core/logic/SAML2SPLogic.java
----------------------------------------------------------------------
diff --git a/ext/saml2sp/logic/src/main/java/org/apache/syncope/core/logic/SAML2SPLogic.java b/ext/saml2sp/logic/src/main/java/org/apache/syncope/core/logic/SAML2SPLogic.java
index 6bd6182..8fe4e5a 100644
--- a/ext/saml2sp/logic/src/main/java/org/apache/syncope/core/logic/SAML2SPLogic.java
+++ b/ext/saml2sp/logic/src/main/java/org/apache/syncope/core/logic/SAML2SPLogic.java
@@ -109,6 +109,7 @@ import org.apache.syncope.core.provisioning.api.serialization.POJOHelper;
 import org.apache.syncope.core.spring.security.AuthContextUtils;
 import org.apache.syncope.core.spring.security.AuthDataAccessor;
 import org.apache.syncope.core.spring.security.Encryptor;
+import org.opensaml.core.xml.schema.XSAny;
 import org.springframework.util.ResourceUtils;
 
 @Component
@@ -462,10 +463,12 @@ public class SAML2SPLogic extends AbstractSAML2Logic<AbstractBaseBean> {
             for (Attribute attr : attrStmt.getAttributes()) {
                 if (!attr.getAttributeValues().isEmpty()) {
                     String attrName = attr.getFriendlyName() == null ? attr.getName() : attr.getFriendlyName();
-                    if (attrName.equals(idp.getConnObjectKeyItem().getExtAttrName())
-                            && attr.getAttributeValues().get(0) instanceof XSString) {
-
-                        keyValue = ((XSString) attr.getAttributeValues().get(0)).getValue();
+                    if (attrName.equals(idp.getConnObjectKeyItem().getExtAttrName())) {
+                        if (attr.getAttributeValues().get(0) instanceof XSString) {
+                            keyValue = ((XSString) attr.getAttributeValues().get(0)).getValue();
+                        } else if (attr.getAttributeValues().get(0) instanceof XSAny) {
+                            keyValue = ((XSAny) attr.getAttributeValues().get(0)).getTextContent();
+                        }
                     }
 
                     AttrTO attrTO = new AttrTO();
@@ -697,5 +700,4 @@ public class SAML2SPLogic extends AbstractSAML2Logic<AbstractBaseBean> {
 
         throw new UnresolvedReferenceException();
     }
-
 }