wso2治理注册表4.6 LDAP无法与用户一起登录

时间:2013-11-15 07:26:00

标签: ldap registry wso2 ldap-client

我已将user-mgt.xml更改为连接到我公司的活动目录。

如果我输入admin用户,我可以登录并查看活动目录的用户。但是,当我尝试与另一个用户,注册表总是说错误的姓名或密码(我知道两者都是对的)。

使用像wireshark这样的嗅探器我可以看到活动目录返回用户的完整名称和更多数据,所以我不明白为什么注册表不允许我登录。

Authentication failure. Wrong username or password is provided {org.wso2.carbon.user.core.common.AbstractUserStoreManager}

<AddAdmin>true</AddAdmin>
<AdminRole>wso2admin</AdminRole>
<AdminUser>
 <UserName>XXXXX</UserName>
 <Password>XXXXX</Password>
</AdminUser>
<EveryOneRoleName>everyone</EveryOneRoleName>
<Property name="dataSource">jdbc/WSO2CarbonDB</Property>

<UserStoreManager class="org.wso2.carbon.user.core.ldap.ActiveDirectoryUserStoreManager">
 <Property name="TenantManager">org.wso2.carbon.user.core.tenant.CommonHybridLDAPTenantManager</Property>
 <Property name="defaultRealmName">WSO2.ORG</Property>
 <Property name="Disabled">false</Property>                                   
 <Property name="kdcEnabled">false</Property>
 <Property name="ConnectionURL">ldap://XXXXXXXX:389</Property> 
 <Property name="ConnectionName">cn=XXXXX,CN=Users,DC=itlab,DC=bk</Property>
 <Property name="ConnectionPassword">XXXXXX</Property>
 <Property name="passwordHashMethod">PLAIN_TEXT</Property>
 <Property name="UserSearchBase">CN=Users,DC=itlab,DC=bk</Property>
 <Property name="UserEntryObjectClass">user</Property>
 <Property name="UserNameAttribute">cn</Property>
 <Property name="isADLDSRole">false</Property>
 <Property name="userAccountControl">512</Property>
 <Property name="UserNameListFilter">(objectClass=user)</Property>
 <Property name="UserNameSearchFilter">(&amp;(objectClass=user)(cn=?))</Property>
 <Property name="UsernameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
 <Property name="UsernameJavaScriptRegEx">^[\S]{3,30}$</Property>
 <Property name="PasswordJavaScriptRegEx">^[\S]{5,30}$</Property>
 <Property name="RolenameJavaScriptRegEx">^[\S]{3,30}$</Property>
 <Property name="RolenameJavaRegEx">[a-zA-Z0-9._-|//]{3,30}$</Property>
 <Property name="ReadGroups">true</Property>
 <Property name="WriteGroups">false</Property>
 <Property name="EmptyRolesAllowed">true</Property>
 <Property name="GroupSearchBase">ou=Grupos,DC=itlab,DC=bk  </Property>
 <Property name="GroupEntryObjectClass">group</Property>
 <Property name="GroupNameAttribute">cn</Property>
 <Property name="SharedGroupNameAttribute">cn</Property>
 <Property name="MembershipAttribute">member</Property>
 <Property name="GroupNameListFilter">(objectcategory=group)</Property>
 <Property name="GroupNameSearchFilter">(&amp;(objectClass=group)(cn=?))</Property>
 <Property name="UserRolesCacheEnabled">true</Property>
 <Property name="Referral">follow</Property>
 <Property name="BackLinksEnabled">true</Property>
 <Property name="MaxRoleNameListLength">100</Property>
 <Property name="MaxUserNameListLength">100</Property>
 <Property name="SCIMEnabled">false</Property>
</UserStoreManager>

谢谢!

1 个答案:

答案 0 :(得分:0)

您的意思是,除了user-mgt.xml文件中的admin用户之外,您无法使用AD用户登录Governance注册表?通常,要登录Governance注册表的管理控制台,

  1. 用户需要正确地使用AD进行身份验证
  2. 用户必须具有访问管理控制台的登录权限。
  3. 根据您的评论,似乎认证很好。然后用户由于原因2而失败了

    请以管理员身份登录并转到用户角色管理页面。在这里你可以看到一个名为“每个人”的角色。请为该角色提供“登录”权限。

    “everyone”是已与AD中的所有用户映射的角色。因此,如果我们为“everyone”角色提供权限,则意味着AD中的所有用户都可以登录...

    如果它也不成功,请使用log4j.properties文件为org.wso2.carbon.use.core包启用调试日志,该文件可在conf目录中找到。