WSO2作为桥梁,电子邮件地址声明丢失

时间:2017-03-24 16:53:19

标签: wso2is

我已将WSO2 IS设置为为我们的WS-Federation IP提供SAML IdP的桥梁。在进行身份验证时,WS-Federation IP会发送包含各种属性的SAML断言,其中包含名称为http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress的属性。 WSO2的SAML断言完全具有所有这些属性,除了缺少emailaddress声明。

我正在使用默认声明映射,服务提供商在Windows上启用属性配置文件,在响应中包含属性,并使用版本5.3.0。

1 个答案:

答案 0 :(得分:0)

我相信我发现了这个问题。 WSO2显然不喜欢接收属性的多个值,并且当它执行时,它只接受属性的最后一个值。此外,如果该值恰好为空白,则WSO2将删除该项目。在我们的WS-Federation IP的SAML断言中,电子邮件地址属性被设置为:

<Attribute Name="http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress">
    <AttributeValue>email@address</AttributeValue>
    <AttributeValue/>
</Attribute>

因为WSO2似乎不支持属性的多个值,所以它仅保留最后一个值,并且,因为它是空白的,所以它会删除该属性。当我将测试用户的数据修改为具有两个电子邮件地址时,列出的最后一个电子邮件地址已通过。