WSOIS 5.1 角色作为逗号分隔列表

WSOIS 5.1 roles as comma separated list

WSO2 IS 5.0 returned SAML 响应,所有角色都在单个 AttributeValue 中作为逗号分隔列表。现在 WSO2 IS 5.1 returns 所有角色都是自己的 AttributeValue。

是否可以将 5.1 到 return 角色作为单个 AttributeValue 中的逗号分隔列表?

是的,这是可能的。

在 Identity Server 5.1.0 中,它 returns 每个角色在 SAML 响应中分别如下所示。

        <saml2:Attribute Name="http://wso2.org/claims/role"
                         NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic"
                         >
            <saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                                  xsi:type="xs:string"
                                  >admin</saml2:AttributeValue>
            <saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                                  xsi:type="xs:string"
                                  >Internal/everyone</saml2:AttributeValue>
            <saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                                  xsi:type="xs:string"
                                  >role2</saml2:AttributeValue>
            <saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                                  xsi:type="xs:string"
                                  >role1</saml2:AttributeValue>
        </saml2:Attribute>

但是,在 IS 5.0.0 中,它返回单个属性中的角色作为逗号分隔值,如下所示。

        <saml2:Attribute Name="http://wso2.org/claims/role"
                         NameFormat="urn:oasis:names:tc:SAML:2.0:attrname-format:basic"
                         >
            <saml2:AttributeValue xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                                  xsi:type="xs:string"
                                  >admin,Internal/everyone,role2,role1</saml2:AttributeValue>
        </saml2:Attribute>

在 IS 5.1.0 中,如果您想要获得同时检索所有角色的相同行为,则必须将以下 属性 添加到特定的用户存储配置中。 (两个逗号)。

<Property name="MultiAttributeSeparator">,,</Property>  

如果它是主用户存储,您可以将它添加到 user-mgt.xml 文件中。如果它是辅助用户存储,您可以将此 属性 添加到 repository/deployment/server/userstores/ 位置中的特定配置文件。

我已经在博客中对此进行了解释 post [1]。

[1] http://tharindue.blogspot.com/2016/09/saml-multi-valued-attributes-in-wso2.html