0

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

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

使用像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>

谢谢!

4

1 回答 1

0

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

  1. 用户需要正确使用 AD 进行身份验证
  2. 用户必须具有登录权限才能访问管理控制台。

根据您的评论,身份验证似乎很好。然后用户由于原因2而失败

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

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

如果还是不成功,请使用 conf 目录下的 log4j.properties 文件启用 org.wso2.carbon.use.core 包的调试日志。

于 2013-11-15T09:02:36.600 回答