针对SAML 2 IdP执行authn时,主题名称标识符应该用于什么?它是否跟踪每个用户登录?
我想知道我的SAML 2服务提供商应用程序是否应该针对不同用户跟踪这些内容。由于它们是瞬态的,因此对于不同的登录可能会有所不同(因此我需要使用挂起用户帐户的集合进行跟踪)。
答案 0 :(得分:9)
<NameIdentifier>
元素是SAML 1.1概念。它已被标识主题的<NameID>
元素所取代。 NameID不一定是瞬态的 - 请参阅SAML 2.0核心specification
答案 1 :(得分:7)
名称标识符包含多个属性。
第一个属性是 NameQualifier ,它指定IDP处用户的安全域。安全域可用于消除使用相同名称标识符的不同用户的歧义。
第二个属性是 SPNameQualifier ,它指定SP上用户的安全域。
第三个属性是 Format ,它指定了如何解释名称标识符。
例如,当用户想要在IDP和SP中使用相同的名称标识符时,使用电子邮件地址名称标识符格式。这意味着如果用户在IDP中以alice@domain.com身份登录,则该用户也将在SP中以alice@domain.com身份登录。
另一个例子,当用户不想在IDP和SP中使用相同的名称标识符时,使用持久标识符。这意味着用户可以在IDP中以alice@idp.com身份登录,但在SP中以bob@sp.com身份登录。这是通过使用由IDP和SP同意的标识符(例如12345)来实现的,该标识符映射到IDP中的alice@idp.com并映射到SP中的bob@sp.com。当您不希望SP知道IDP中用户的名称标识符时,持久标识符非常有用。