2017-05-18 3 views
0

Ich lerne gerade Shibboleth SP und ich bin auf ein Problem gestoßen, wo ich nicht die NameID aus der SAML Antwort lesen kann, die ich von unserem Unternehmen IdP erhalte. Das einzige "Attribut", das sie für mich konfiguriert haben, ist die NameID, die den Benutzernamen in unserem AD enthält. Sie fügen es nicht als Attribut, sondern eher in das Subjekt ein. Unten ist der Teil der SAML-Antwort, der die NameID enthält.Shibboleth SP - NameID Attribut Karte

<Subject> 
    <NameID>XXXXXX</NameID> 
    <SubjectConfirmation Method="urn:oasis:names:tc:SAML:2.0:cm:bearer"> 
     <SubjectConfirmationData InResponseTo="_cbedab7210959e0d00294c557c648eb5" 
            NotOnOrAfter="2017-05-18T21:15:24.776Z" 
            Recipient="https://xxxxxx.com/Shibboleth.sso/SAML2/POST" 
            /> 
    </SubjectConfirmation> 
</Subject> 

Wie kann ich diesen einfachen Wert extrahieren? Ich habe keinen Beispieleintrag in der attribute-map.xml gefunden, der zur Rechnung passt.

Ich verwende IIS 8.5 und ColdFusion.

+0

Dies sieht aus wie ein Job für 'parsexml()'. Siehe: https://helpx.adobe.com/coldfusion/cfml-reference/coldfusion-functions/functions-tz/xmlparse.html –

+0

Ich bin vertraut mit dem Parsen von XML-Dokumenten mit CF (tatsächlich tat ich das vor dem Versuch, Shibboleth auszuprobieren)), aber ich denke nicht, dass das die Lösung ist. Shibboleth fängt die SAML-Antwort über einen ISAPI-Filter ab, so dass ich mir nicht sicher bin, ob ich das XML-Dokument danach bekommen kann. Ich sollte in der Lage sein, der attribute-map.xml-Datei ein Element hinzuzufügen, um den Wert abzurufen. – user3178586

+0

Aktualisierter Originalbeitrag mit meiner Lösung. – user3178586

Antwort

2

Ich habe schließlich das Attribut zu map mit dem folgenden. In meinem Fall hatte ich SAML: 1.1 durch SAML2 ersetzt. Ich nehme an, die NameID ist Teil der SAML: 1.1 Spezifikation.

<Attribute name="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified" id="NameID"> 
    <AttributeDecoder xsi:type="NameIDAttributeDecoder" formatter="$Name" defaultQualifiers="true"/> 
</Attribute> 
Verwandte Themen