使用KerberosAuthNConfiguration

时间:2017-05-05 18:19:34

标签: saml saml-2.0 shibboleth service-provider

我已经设置了Shibboleth IDPv3来测试我的SP实现。 SP发送SAML登录请求,并向用户显示Shibboleth IDP凭据页面,用户在该页面中输入其Kerberos凭据(我已使用KerberosAuthNConfiguration配置了Loginflow)。 SAML响应返回一个nameId,它看起来像一个编码值。但是,我想要的是NameId元素,用于包含用户用于登录IDP凭据页面的用户名。

尝试在各种XML配置文件中配置bean没有任何运气,我尝试了一些尝试。有没有人尝试类似的东西,这甚至可能实现?

1 个答案:

答案 0 :(得分:0)

如果查看文件saml-nameid.properties,您会看到参数idp.nameid.saml2.default。我怀疑您的配置设置为默认值urn:oasis:names:tc:SAML:2.0:nameid-format:transient,它不是编码值,而是随机字符串。

听起来您想要发送“持久”标识符而不是瞬态标识符。为此,

  1. idp.nameid.saml2.default更改为urn:oasis:names:tc:SAML:2.0:nameid-format:persistent
  2. 接下来,您需要在文件saml-nameid.xml中启用持久性NameID生成器。
  3. 最后,您需要通过idp.persistentId.sourceAttribute属性在saml-nameid.properties中设置要在nameid中使用的属性。
  4. 有关如何执行此操作的详细信息,请参阅Shibboleth IdP PersistentNameIDGenerationConfiguration page