Openldap 使用WSO2 Identity Server配置外部LDAP用户存储

Openldap 使用WSO2 Identity Server配置外部LDAP用户存储,openldap,wso2carbon,Openldap,Wso2carbon,我当前的配置是 <UserManager> <Realm> <Configuration> <AdminRole>admin</AdminRole> <AdminUser> <UserName>admin</UserName>

我当前的配置是

 <UserManager>
    <Realm>
        <Configuration>
                <AdminRole>admin</AdminRole> 
                <AdminUser>
                     <UserName>admin</UserName>
                     <Password>XXXXXX</Password>
                </AdminUser>
            <EveryOneRoleName>everyone</EveryOneRoleName> <!-- By default users in     thsi role sees the registry root -->
<!--            <ReadOnly>false</ReadOnly> -->
            <MaxUserNameListLength>500</MaxUserNameListLength>
            <Property name="url">jdbc:h2:repository/database/WSO2CARBON_DB</Property>
            <Property name="userName">wso2carbon</Property>
            <Property name="password">wso2carbon</Property>
            <Property name="driverName">org.h2.Driver</Property>
            <Property name="maxActive">50</Property>
            <Property name="maxWait">60000</Property>
            <Property name="minIdle">5</Property>
        </Configuration>
        <UserStoreManager
            class="org.wso2.carbon.user.core.ldap.LDAPUserStoreManager">
            <Property name="ConnectionURL">ldap://localhost:389</Property>
            <Property name="ConnectionName">cn=admin,dc=ysd,dc=com</Property>
            <Property name="ConnectionPassword">admin32</Property>
            <Property name="UserSearchBase">ou=People,dc=ysd,dc=com</Property>
            <Property name="UserNameListFilter">(objectClass=person)</Property>
            <Property name="UserNameAttribute">uid</Property>
            <Property name="ReadLDAPGroups">false</Property>
            <Property name="GroupSearchBase">ou=People,dc=ysd,dc=com</Property>
            <Property name="GroupSearchFilter">(objectClass=groupOfNames)</Property>
            <Property name="GroupNameAttribute">cn</Property>
            <Property name="MembershipAttribute">member</Property>
        </UserStoreManager>
        <AuthorizationManager
            class="org.wso2.carbon.user.core.authorization.JDBCAuthorizationManager">
        </AuthorizationManager>
    </Realm>
</UserManager>`
#

管理
管理
XXXXXX
每个人
500
jdbc:h2:repository/database/WSO2CARBON\u DB
WSO2碳
WSO2碳
org.h2.Driver
50
60000
5.
ldap://localhost:389
cn=admin,dc=ysd,dc=com
管理员32
ou=人,dc=ysd,dc=com
(objectClass=person)
液体
假的
ou=人,dc=ysd,dc=com
(objectClass=groupOfNames)
cn
成员
`
# 我在启动服务器时发现以下错误。 *错误{org.wso2.carbon.user.core.common.DefaultRealm}-无法创建org.wso2.carbon.user.core.ldap.LDAPUserStoreManager。错误为:null java.lang.reflect.InvocationTargetException* .............. ............

原因:org.wso2.carbon.user.core.UserStoreException:LDAPUserStoreManager无法在读写模式下运行。这是无效的配置。它只能在只读模式下运行 位于org.wso2.carbon.user.core.ldap.LDAPUserStoreManager。(LDAPUserStoreManager.java:97)
... 25更多

您的确切要求是什么?您希望Identity Server在外部LDAP上执行读写操作,还是只执行读操作

出现此异常是因为您试图将只读ldap用户存储用于读写操作。将参数
false
设置为true,则此错误将消失


但是,如果您的要求是将is用于两种读写操作,请使用ApachedUserStoreManager。您可以使用LDAPUserStoreManager进行此操作。

您的具体要求是什么?您希望Identity Server在外部LDAP上执行读写操作,还是只执行读操作

出现此异常是因为您试图将只读ldap用户存储用于读写操作。将参数
false
设置为true,则此错误将消失


但是,如果您的要求是将is用于两种读写操作,请使用ApachedUserStoreManager。你可以使用LDAPUserStoreManager来解决这个问题。

我有类似的问题,但是有人将我的帖子移动到了serverfault,这样我就没有得到那里的Wso2人员的任何支持……我有类似的问题,但是有人将我的帖子移动到了serverfault,这样我就没有得到那里的Wso2人员的任何支持。。。