SAML 身份验证请求具有无法满足的 NameID 策略。

SAML 身份验证请求具有无法满足的 NameID 策略。

我使用发行政策作为:

规则1:

在此处输入图片描述

规则 2(自定义):

c:[Type == "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier"]
 => issue(Type = "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", 
Issuer = c.Issuer, 
OriginalIssuer = c.OriginalIssuer, 
Value = c.Value, 
ValueType = c.ValueType,
Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/format"] = "urn:oasis:names:tc:SAML:2.0:nameid-format:transient", 
Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/namequalifier"] = "https://fs.hhres.com/adfs/services/trust", 
Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/spnamequalifier"] = "sp_test");

当我尝试登录时,它给出了错误(来自事件查看器)-

SAML 身份验证请求具有无法满足的 NameID 策略。

请求者:BambooHR-SAML

名称标识符格式:urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress SPNameQualifier:

异常详细信息:MSIS7070:SAML 请求包含已颁发令牌不满足的 NameIDPolicy。请求的 NameIDPolicy:AllowCreate:True 格式:urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress SPNameQualifier:。实际 NameID 属性:格式:urn:oasis:names:tc:SAML:2.0:nameid-format:transient,NameQualifier: https://adfs_url/adfs/services/trustSPNameQualifier: sp_test,SPProvidedId: 。

此请求失败。

用户操作使用 AD FS 管理单元配置发出所需名称标识符的配置。

有人能解释一下我做错了什么以及需要做什么吗?

答案1

我通过改变线路解决了这个问题-

Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/format"] = "urn:oasis:names:tc:SAML:2.0:nameid-format:transient", 

进入

Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/format"] = "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress", 

答案2

它需要 emailAddress 的 NameID 格式,并且您提供的是临时的格式之一。

最简单的方法是通过转换规则。

将电子邮件转换为 NameID,并从下拉菜单中选择电子邮件格式。

相关内容