Uploaded image for project: 'CXF'
  1. CXF
  2. CXF-6372

Generating distinct claim values for multi-value LDAP attributes

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 3.0.4
    • Fix Version/s: 3.1
    • Component/s: STS
    • Labels:
      None
    • Estimated Complexity:
      Unknown

      Description

      The LDAP claim handler generates only a single value element for a claim with delimited values, even thou a claim also supports multiple distinct values.

      This task is about to improve this behavior.

      Old behavior sample: memberOf attribute from LDAP would be generated like this in the SAML token:

      <saml2:AttributeStatement>
      	<saml2:Attribute Name=".../05/identity/claims/role" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified">
      		<saml2:AttributeValue xsi:type="xs:string">admin;user;manager</saml2:AttributeValue>
      	</saml2:Attribute>
      </saml2:AttributeStatement>
      

      New behavior sample: memberOf attribute from LDAP would be generated like this in the SAML token:

      <saml2:AttributeStatement>
      	<saml2:Attribute Name=".../05/identity/claims/role" NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:unspecified">
      		<saml2:AttributeValue xsi:type="xs:string">admin</saml2:AttributeValue>
      		<saml2:AttributeValue xsi:type="xs:string">user</saml2:AttributeValue>
      		<saml2:AttributeValue xsi:type="xs:string">manager</saml2:AttributeValue>
      	</saml2:Attribute>
      </saml2:AttributeStatement>
      

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                jan4talend Jan Bernhardt
                Reporter:
                jan4talend Jan Bernhardt
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: