2017-05-18 2 views
0

Shibboleth SPを学んでいて、法人IdPから受け取ったSAMLレスポンスからNameIDを読み取ることができない問題が発生しました。彼らが私のために設定した唯一の "属性"は、ADのユーザー名を保持するNameIDです。属性として属性を追加するのではなく、対象に追加します。以下は、NameIDを含むSAML応答の部分です。Shibboleth SP - NameIDアトリビュートマップ

<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> 

この単純な値はどのように抽出できますか?私は法案に合っているようなattribute-map.xmlのエントリの例は見つけていません。

私はIIS 8.5とColdFusionを使用しています。

+0

これは 'parsexml()'の仕事のようです。参照してください:https://helpx.adobe.com/coldfusion/cfml-reference/coldfusion-functions/functions-tz/xmlparse.html –

+0

私はCFでXML文書を解析することに慣れています(実際にはShibboleth )、しかし、私はそれがここの解決策だとは思わない。 ShibbolethはISAPIフィルタを介してSAML応答を傍受します。そのため、後でXML文書を取得することもできません。値を取得するために、attribute-map.xmlファイルにアイテムを追加できるはずです。 – user3178586

+0

オリジナルの投稿を私のソリューションで更新しました。 – user3178586

答えて

2

私はついに次のようにマップする属性を得ました。私の場合、私はSAML:1.1をSAML2に置き換えました。 NameIDはSAML:1.1仕様の一部であると仮定します。

<Attribute name="urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified" id="NameID"> 
    <AttributeDecoder xsi:type="NameIDAttributeDecoder" formatter="$Name" defaultQualifiers="true"/> 
</Attribute> 
関連する問題