我应该如何从SAML响应中提取用户名?

时间:2017-01-26 18:01:13

标签: saml

我正在编写SAML SP,无法找出从IdP返回的SAML响应中提取用户用户名/登录的统一方法。看起来这些信息可以来自不同IdP的各种地方(NameID,Attribute),而IdP元数据似乎没有提供任何提示。

现在,我正在使用包含XPath的额外配置指令来检索用户名,但是想要消除这一点。这是我可以在SP元数据中指定的吗?

1 个答案:

答案 0 :(得分:2)

它与SAML Meta Data无关,而是SP的专有配置。 如您所述,您可以使用NamedID的值或属性语句的值。如果您的SP允许使用不同的IdP进行SSO,则此设置可能是基于IdP实体的。例如。一个IdP可能只支持'transient NameId Format',那么你不能使用该值,因为它是一个必须一直改变的不透明句柄。为了获得一些想法,您可以查看OpenAM的文档,为此目的使用“帐户映射器”(https://backstage.forgerock.com/docs/openam/13.5/admin-guide/chap-federation#sp-account-mapper