wso2治理注册表4.6 LDAP无法使用用户登录

wso2治理注册表4.6 LDAP无法使用用户登录,ldap,registry,wso2,ldap-client,Ldap,Registry,Wso2,Ldap Client,我已将user-mgt.xml更改为与公司的active directory连接 如果我使用管理员用户输入,我可以登录并查看active directory的用户。但是当我尝试与另一个用户交流时,注册表总是说错误的用户名或密码(我知道两者都是对的) 通过像wireshark这样的嗅探器,我可以看到active directory正在返回用户的全名和更多数据,所以我不明白为什么注册表不允许我登录 Authentication failure. Wrong username or password

我已将user-mgt.xml更改为与公司的active directory连接

如果我使用管理员用户输入,我可以登录并查看active directory的用户。但是当我尝试与另一个用户交流时,注册表总是说错误的用户名或密码(我知道两者都是对的)

通过像wireshark这样的嗅探器,我可以看到active directory正在返回用户的全名和更多数据,所以我不明白为什么注册表不允许我登录

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>
身份验证失败。提供了错误的用户名或密码{org.wso2.carbon.user.core.common.AbstractUserStoreManager}
真的
wso2admin
XXXXX
XXXXX
每个人
jdbc/WSO2CarbonDB
org.wso2.carbon.user.core.tenant.CommonHybridlDaptentManager
WSO2.ORG
假的
假的
ldap://XXXXXXXX:389 
cn=XXXXX,cn=Users,DC=itlab,DC=bk
XXXXXX
纯文本
CN=用户,DC=itlab,DC=bk
用户
cn
假的
512
(objectClass=user)
(&;(objectClass=user)(cn=?)
[a-zA-Z0-9.|-|/][3,30}$
^[\S]{3,30}$
^[\S]{5,30}$
^[\S]{3,30}$
[a-zA-Z0-9.|-|/][3,30}$
真的
假的
真的
ou=Grupos,DC=itlab,DC=bk
组
cn
cn
成员
(objectcategory=组)
(&;(objectClass=group)(cn=?)
真的
跟随
真的
100
100
假的

谢谢

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

  • 用户需要正确地使用AD进行身份验证
  • 用户必须具有登录权限才能访问管理控制台
  • 根据您的评论,似乎认证是可以的。则由于原因2,用户已失败

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

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


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

    我最终实现了与另一个用户登录:),但我还有一个疑问。我宁愿用uid而不是用户名登录(例如,我的意思是用bk00001而不是John Smith登录)。有办法吗?我试图将uid放入mgt-users.xml中,但它不起作用。谢谢您的意思是要使用“uid”作为用户名。在您的配置中,它被设置为“cn”。能否尝试将“UserNameAttribute”属性和“UserNameSearchFilter”中的“cn”更改为“uid”,然后查看