【发布时间】:2017-10-18 21:14:18
【问题描述】:
我刚刚学习 Shibboleth SP,遇到了一个问题,我无法从公司 IdP 收到的 SAML 响应中读取 NameID。他们为我配置的唯一“属性”是在我们的 AD 中保存用户名的 NameID。他们不会将其添加为属性,而是添加到主题中。以下是包含 NameID 的 SAML 响应部分。
<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。
【问题讨论】:
-
这看起来像是
parsexml()的工作。见:helpx.adobe.com/coldfusion/cfml-reference/coldfusion-functions/… -
我熟悉使用 CF 解析 XML 文档(实际上我在尝试 Shibboleth 之前就是这样做的),但我认为这不是这里的解决方案。 Shibboleth 通过 ISAPI 过滤器拦截 SAML 响应,所以我不确定在那之后我什至可以获取 XML 文档。我应该能够在 attribute-map.xml 文件中添加一个项目来检索值。
-
用我的解决方案更新了原始帖子。
-
仅供参考 - 由于解决方案已移至“答案”,因此已回滚到原始版本。
标签: coldfusion saml iis-8 shibboleth