在SAML元数据文件中定义了几种NameID格式,例如:
<NameIDFormat>urn:mace:shibboleth:1.0:nameIdentifier</NameIDFormat>
<NameIDFormat>urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified</NameIDFormat>
<NameIDFormat>urn:oasis:names:tc:SAML:2.0:nameid-format:transient</NameIDFormat>
谁能解释一下这些是用来做什么的?有什么不同?
发布于 2014-02-11 00:35:34
请参阅oasis SAML规范的本SAML core pdf的第8.3节。
SP和IdP通常会就同一主题进行交流。该主题应该通过名称标识符来标识,该名称标识符应采用某种格式,以便其他方可以根据该格式轻松地标识该主题。
所有这些
1.urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified [default]
2.urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress
3.urn:oasis:names:tc:SAML:2.0:nameid-format:persistent
4.urn:oasis:names:tc:SAML:2.0:nameid-format:transient
是名称标识符的格式。
瞬态适用于[SAML Core第8.3.8节]
表示元素的内容是具有瞬时语义的标识符,应由依赖方将其视为不透明的临时值。
可以使用Unspecified,它完全取决于实体自己的意愿实现。
发布于 2017-06-12 16:29:01
关于这一点,我想你可以参考http://docs.oasis-open.org/security/saml/Post2.0/sstc-saml-tech-overview-2.0.html。
以下是我对此的理解,身份联盟用例提供了这些概念的详细信息:
IdP提供永久标识符,它们用于链接到SP中的本地帐户,但它们单独标识为特定服务的用户配置文件。例如,持久标识符类似于: johnForAir、jonhForCar、johnForHotel,它们都只用于一个指定的服务,因为它需要链接到服务中的本地标识。
临时标识符是IdP告诉SP会话中的用户已被授予访问SP上的资源的权限,但用户的身份实际上并未提供给SP。例如,就像“匿名性(身份提供商不会告诉SP他是谁)有权访问SP上的/resource”这样的断言。SP得到了它,并让浏览器访问它,但仍然不知道匿名的真实姓名。
未指定identifiers-的
规范中对此的解释是“将元素内容的解释留给单独的实现”。这意味着IdP为它定义了真正的格式,并且它假设SP知道如何解析从IdP响应的格式数据。例如,IdP给出格式数据"UserName=XXXXX Country=US",SP获得断言,并可以解析它并提取UserName为"XXXXX“。
发布于 2018-07-29 22:56:58
对于服务提供者来说,这只是一个提示,告诉他们应该从身份提供者返回的NameID中得到什么。它可以是:
unspecified
emailAddress
-例如john@company.com
X509SubjectName
标识符。CN=john,O=Company Ltd.,C=US
WindowsDomainQualifiedName
-例如CompanyDomain\John
kerberos
–例如john@realm
entity
-用于标识提供基于CompanyDomain\John
kerberos
–的服务并且看起来像john@realm
entity
的实体。URIpersistent
- e.g是必须包括伪随机值并且对于实际用户不可追踪的不透明服务特定标识符,因此,这是一个应视为临时的隐私feature.transient
- opaque标识符。https://stackoverflow.com/questions/11693297
复制相似问题