在wso2

时间:2016-04-19 02:00:32

标签: wso2 wso2is

我按照文件说 http://xacmlinfo.org/2014/10/07/email-username-with-identity-server/允许用户使用其电子邮件ID登录。但是,如果我们启用

,则会提及
<EnableEmailUserName>true</EnableEmailUserName>

然后用户无法使用他们的用户名或电子邮件以外的任何属性登录。

我们的用例作为LDAP作为辅助用户商店,我们也会及时配置。所以我们需要允许用户使用电子邮件或用户名登录。有没有办法实现这一目标。

2 个答案:

答案 0 :(得分:0)

您必须关注this guide才能实现此目标。以下是您需要遵循的步骤。

第1步

使用以下命令配置LDAP用户存储相关配置     user-mgt.xml文件位于/ repository / conf目录中。

配置UserNameSearchFilter,它有助于使用mail和uid属性在LDAP中搜索用户对象。

<Property
name="UserNameSearchFilter">(&amp;(objectClass=person)(|(mail=?)(uid=?)))</Property>

禁用UserDNPattern属性(如果当前已启用)。

<!--Property
name="UserDNPattern">uid={0},ou=Users,dc=wso2,dc=org</Property--> 

mail属性具有唯一的要求。如果你是     使用mail属性,您需要打开找到的carbon.xml文件     在/ repository / conf目录中取消注释     以下。有关电子邮件身份验证的详细信息,请参阅此处。

<EnableEmailUserName>true</EnableEmailUserName>  

第2步

如果要使用多个属性(基本上要检索具有多个属性的内部角色),则必须在/repository/conf/user-mgt.xml文件中添加以下属性。只有在安装WSO2 Identity Server 5.0.0和Service Pack后才能执行此操作。

 <Property name="MultipleAttributeEnable">true</Property> 

第3步

要测试此项,请重新启动     Identity Server并尝试通过以下方式登录管理控制台     为邮件和uid提供相同的密码。

答案 1 :(得分:0)

5.10.0之前的版本不支持多属性登录。上述建议的方法也可能在某些流程中引起一些不一致。(原因请参见here

blog post

中描述了为早期Identity Server版本采用多属性登录的解决方案。

但是从5.10.0开始,WSO2通过引入here中介绍的一组新的用户商店管理器来支持这一点。