0

我在尝试将 apache DS 后端添加到 apache 晕厥时遇到错误。

环境

Apache DS v 2.00-M20
Apache syncope v 1.2.4
OS Windows 7 64 bit 

我遵循了 apache DS 教程并导入了 ldif 文件 Apache DS 数据

我已成功配置晕厥以使用 MySQL。我添加了一个ldap资源如下

ldap 资源

用户映射

在此处输入图像描述

我已将连接器定义如下

在此处输入图像描述

第2部分

在此处输入图像描述

我已经从晕厥中进行了测试,它可以通过单击头盔图标很好地连接到 Apache DS。现在我添加了一个同步任务如下 在此处输入图像描述

现在当我执行它时,我收到了这个错误

JobExecutionException: While syncing on connector
org.quartz.JobExecutionException: While syncing on connector [See nested exception: org.identityconnectors.framework.common.exceptions.ConnectorException: javax.naming.NamingException: [LDAP: error code 36 - ALIAS_DEREFERENCING_PROBLEM: failed for MessageType : SEARCH_REQUEST
Message ID : 21
    SearchRequest
        baseDn : 'o=sevenseas'
        filter : '(&(&(objectClass=inetorgperson:[11])(objectClass=top))(cn=*:[∞]))'
        scope : whole subtree
        typesOnly : false
        Size Limit : no limit
        Time Limit : no limit
        Deref Aliases : deref Always
        attributes : 'cn', 'sn', 'uid', 'userPassword'
org.apache.directory.api.ldap.model.message.SearchRequestImpl@40da9795    Virtual List View Request Control
        oid : 2.16.840.1.113730.3.4.9
        critical : true
        beforeCount   : '0'
        afterCount   : '99'
        target : 
            offset   : '1'
            contentCount   : '0'
SortRequestControlImpl [sortKeys=[SortKey : [uid]]]: java.io.IOException: The system cannot find the path specified]; remaining name 'o=sevenseas']
    at org.apache.syncope.core.sync.impl.SyncJob.executeWithSecurityContext(SyncJob.java:184)
    at org.apache.syncope.core.sync.impl.SyncJob.executeWithSecurityContext(SyncJob.java:55)
    at org.apache.syncope.core.sync.impl.AbstractSyncJob.doExecute(AbstractSyncJob.java:382)
    at org.apache.syncope.core.quartz.AbstractTaskJob.execute(AbstractTaskJob.java:125)
    at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
    at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
Caused by: org.identityconnectors.framework.common.exceptions.ConnectorException: javax.naming.NamingException: [LDAP: error code 36 - ALIAS_DEREFERENCING_PROBLEM: failed for MessageType : SEARCH_REQUEST
Message ID : 21
    SearchRequest
        baseDn : 'o=sevenseas'
        filter : '(&(&(objectClass=inetorgperson:[11])(objectClass=top))(cn=*:[∞]))'
        scope : whole subtree
        typesOnly : false
        Size Limit : no limit
        Time Limit : no limit
        Deref Aliases : deref Always
        attributes : 'cn', 'sn', 'uid', 'userPassword'
org.apache.directory.api.ldap.model.message.SearchRequestImpl@40da9795    Virtual List View Request Control
        oid : 2.16.840.1.113730.3.4.9
        critical : true
        beforeCount   : '0'
        afterCount   : '99'
        target : 
            offset   : '1'
            contentCount   : '0'
SortRequestControlImpl [sortKeys=[SortKey : [uid]]]: java.io.IOException: The system cannot find the path specified]; remaining name 'o=sevenseas'
    at net.tirasa.connid.bundles.ldap.search.LdapInternalSearch.execute(LdapInternalSearch.java:81)
    at net.tirasa.connid.bundles.ldap.search.LdapSearch.execute(LdapSearch.java:139)
    at net.tirasa.connid.bundles.ldap.LdapConnector.executeQuery(LdapConnector.java:136)
    at net.tirasa.connid.bundles.ldap.LdapConnector.executeQuery(LdapConnector.java:57)
    at org.identityconnectors.framework.impl.api.local.operations.SearchImpl.rawSearch(SearchImpl.java:170)
    at org.identityconnectors.framework.impl.api.local.operations.SearchImpl.search(SearchImpl.java:129)
    at sun.reflect.GeneratedMethodAccessor624.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.identityconnectors.framework.impl.api.local.operations.ConnectorAPIOperationRunnerProxy.invoke(ConnectorAPIOperationRunnerProxy.java:98)
    at com.sun.proxy.$Proxy215.search(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor624.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.identityconnectors.framework.impl.api.local.operations.ThreadClassLoaderManagerProxy.invoke(ThreadClassLoaderManagerProxy.java:98)
    at com.sun.proxy.$Proxy215.search(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor624.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.identityconnectors.framework.impl.api.BufferedResultsProxy$BufferedResultsHandler.run(BufferedResultsProxy.java:159)
Caused by: javax.naming.NamingException: [LDAP: error code 36 - ALIAS_DEREFERENCING_PROBLEM: failed for MessageType : SEARCH_REQUEST
Message ID : 21
    SearchRequest
        baseDn : 'o=sevenseas'
        filter : '(&(&(objectClass=inetorgperson:[11])(objectClass=top))(cn=*:[∞]))'
        scope : whole subtree
        typesOnly : false
        Size Limit : no limit
        Time Limit : no limit
        Deref Aliases : deref Always
        attributes : 'cn', 'sn', 'uid', 'userPassword'
org.apache.directory.api.ldap.model.message.SearchRequestImpl@40da9795    Virtual List View Request Control
        oid : 2.16.840.1.113730.3.4.9
        critical : true
        beforeCount   : '0'
        afterCount   : '99'
        target : 
            offset   : '1'
            contentCount   : '0'
SortRequestControlImpl [sortKeys=[SortKey : [uid]]]: java.io.IOException: The system cannot find the path specified]; remaining name 'o=sevenseas'
    at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3063)
    at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:3033)
    at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2840)
    at com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1849)
    at com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1772)
    at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.java:386)
    at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:356)
    at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:339)
    at net.tirasa.connid.bundles.ldap.search.VlvIndexSearchStrategy.searchBaseDN(VlvIndexSearchStrategy.java:117)
    at net.tirasa.connid.bundles.ldap.search.VlvIndexSearchStrategy.doSearch(VlvIndexSearchStrategy.java:84)
    at net.tirasa.connid.bundles.ldap.search.LdapInternalSearch.execute(LdapInternalSearch.java:71)
    ... 19 more


ConnectorException: javax.naming.NamingException: [LDAP: error code 36 - ALIAS_DEREFERENCING_PROBLEM: failed for MessageType : SEARCH_REQUEST
Message ID : 21
    SearchRequest
        baseDn : 'o=sevenseas'
        filter : '(&(&(objectClass=inetorgperson:[11])(objectClass=top))(cn=*:[∞]))'
        scope : whole subtree
        typesOnly : false
        Size Limit : no limit
        Time Limit : no limit
        Deref Aliases : deref Always
        attributes : 'cn', 'sn', 'uid', 'userPassword'
org.apache.directory.api.ldap.model.message.SearchRequestImpl@40da9795    Virtual List View Request Control
        oid : 2.16.840.1.113730.3.4.9
        critical : true
        beforeCount   : '0'
        afterCount   : '99'
        target : 
            offset   : '1'
            contentCount   : '0'
SortRequestControlImpl [sortKeys=[SortKey : [uid]]]: java.io.IOException: The system cannot find the path specified]; remaining name 'o=sevenseas'
org.identityconnectors.framework.common.exceptions.ConnectorException: javax.naming.NamingException: [LDAP: error code 36 - ALIAS_DEREFERENCING_PROBLEM: failed for MessageType : SEARCH_REQUEST
Message ID : 21
    SearchRequest
        baseDn : 'o=sevenseas'
        filter : '(&(&(objectClass=inetorgperson:[11])(objectClass=top))(cn=*:[∞]))'
        scope : whole subtree
        typesOnly : false
        Size Limit : no limit
        Time Limit : no limit
        Deref Aliases : deref Always
        attributes : 'cn', 'sn', 'uid', 'userPassword'
org.apache.directory.api.ldap.model.message.SearchRequestImpl@40da9795    Virtual List View Request Control
        oid : 2.16.840.1.113730.3.4.9
        critical : true
        beforeCount   : '0'
        afterCount   : '99'
        target : 
            offset   : '1'
            contentCount   : '0'
SortRequestControlImpl [sortKeys=[SortKey : [uid]]]: java.io.IOException: The system cannot find the path specified]; remaining name 'o=sevenseas'
    at net.tirasa.connid.bundles.ldap.search.LdapInternalSearch.execute(LdapInternalSearch.java:81)
    at net.tirasa.connid.bundles.ldap.search.LdapSearch.execute(LdapSearch.java:139)
    at net.tirasa.connid.bundles.ldap.LdapConnector.executeQuery(LdapConnector.java:136)
    at net.tirasa.connid.bundles.ldap.LdapConnector.executeQuery(LdapConnector.java:57)
    at org.identityconnectors.framework.impl.api.local.operations.SearchImpl.rawSearch(SearchImpl.java:170)
    at org.identityconnectors.framework.impl.api.local.operations.SearchImpl.search(SearchImpl.java:129)
    at sun.reflect.GeneratedMethodAccessor624.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.identityconnectors.framework.impl.api.local.operations.ConnectorAPIOperationRunnerProxy.invoke(ConnectorAPIOperationRunnerProxy.java:98)
    at com.sun.proxy.$Proxy215.search(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor624.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.identityconnectors.framework.impl.api.local.operations.ThreadClassLoaderManagerProxy.invoke(ThreadClassLoaderManagerProxy.java:98)
    at com.sun.proxy.$Proxy215.search(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor624.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.identityconnectors.framework.impl.api.BufferedResultsProxy$BufferedResultsHandler.run(BufferedResultsProxy.java:159)
Caused by: javax.naming.NamingException: [LDAP: error code 36 - ALIAS_DEREFERENCING_PROBLEM: failed for MessageType : SEARCH_REQUEST
Message ID : 21
    SearchRequest
        baseDn : 'o=sevenseas'
        filter : '(&(&(objectClass=inetorgperson:[11])(objectClass=top))(cn=*:[∞]))'
        scope : whole subtree
        typesOnly : false
        Size Limit : no limit
        Time Limit : no limit
        Deref Aliases : deref Always
        attributes : 'cn', 'sn', 'uid', 'userPassword'
org.apache.directory.api.ldap.model.message.SearchRequestImpl@40da9795    Virtual List View Request Control
        oid : 2.16.840.1.113730.3.4.9
        critical : true
        beforeCount   : '0'
        afterCount   : '99'
        target : 
            offset   : '1'
            contentCount   : '0'
SortRequestControlImpl [sortKeys=[SortKey : [uid]]]: java.io.IOException: The system cannot find the path specified]; remaining name 'o=sevenseas'
    at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3063)
    at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:3033)
    at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2840)
    at com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1849)
    at com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1772)
    at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.java:386)
    at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:356)
    at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:339)
    at net.tirasa.connid.bundles.ldap.search.VlvIndexSearchStrategy.searchBaseDN(VlvIndexSearchStrategy.java:117)
    at net.tirasa.connid.bundles.ldap.search.VlvIndexSearchStrategy.doSearch(VlvIndexSearchStrategy.java:84)
    at net.tirasa.connid.bundles.ldap.search.LdapInternalSearch.execute(LdapInternalSearch.java:71)
    ... 19 more


NamingException: [LDAP: error code 36 - ALIAS_DEREFERENCING_PROBLEM: failed for MessageType : SEARCH_REQUEST
Message ID : 21
    SearchRequest
        baseDn : 'o=sevenseas'
        filter : '(&(&(objectClass=inetorgperson:[11])(objectClass=top))(cn=*:[∞]))'
        scope : whole subtree
        typesOnly : false
        Size Limit : no limit
        Time Limit : no limit
        Deref Aliases : deref Always
        attributes : 'cn', 'sn', 'uid', 'userPassword'
org.apache.directory.api.ldap.model.message.SearchRequestImpl@40da9795    Virtual List View Request Control
        oid : 2.16.840.1.113730.3.4.9
        critical : true
        beforeCount   : '0'
        afterCount   : '99'
        target : 
            offset   : '1'
            contentCount   : '0'
SortRequestControlImpl [sortKeys=[SortKey : [uid]]]: java.io.IOException: The system cannot find the path specified]
javax.naming.NamingException: [LDAP: error code 36 - ALIAS_DEREFERENCING_PROBLEM: failed for MessageType : SEARCH_REQUEST
Message ID : 21
    SearchRequest
        baseDn : 'o=sevenseas'
        filter : '(&(&(objectClass=inetorgperson:[11])(objectClass=top))(cn=*:[∞]))'
        scope : whole subtree
        typesOnly : false
        Size Limit : no limit
        Time Limit : no limit
        Deref Aliases : deref Always
        attributes : 'cn', 'sn', 'uid', 'userPassword'
org.apache.directory.api.ldap.model.message.SearchRequestImpl@40da9795    Virtual List View Request Control
        oid : 2.16.840.1.113730.3.4.9
        critical : true
        beforeCount   : '0'
        afterCount   : '99'
        target : 
            offset   : '1'
            contentCount   : '0'
SortRequestControlImpl [sortKeys=[SortKey : [uid]]]: java.io.IOException: The system cannot find the path specified]; remaining name 'o=sevenseas'
    at com.sun.jndi.ldap.LdapCtx.mapErrorCode(LdapCtx.java:3063)
    at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:3033)
    at com.sun.jndi.ldap.LdapCtx.processReturnCode(LdapCtx.java:2840)
    at com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1849)
    at com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1772)
    at com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.java:386)
    at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:356)
    at com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:339)
    at net.tirasa.connid.bundles.ldap.search.VlvIndexSearchStrategy.searchBaseDN(VlvIndexSearchStrategy.java:117)
    at net.tirasa.connid.bundles.ldap.search.VlvIndexSearchStrategy.doSearch(VlvIndexSearchStrategy.java:84)
    at net.tirasa.connid.bundles.ldap.search.LdapInternalSearch.execute(LdapInternalSearch.java:71)
    at net.tirasa.connid.bundles.ldap.search.LdapSearch.execute(LdapSearch.java:139)
    at net.tirasa.connid.bundles.ldap.LdapConnector.executeQuery(LdapConnector.java:136)
    at net.tirasa.connid.bundles.ldap.LdapConnector.executeQuery(LdapConnector.java:57)
    at org.identityconnectors.framework.impl.api.local.operations.SearchImpl.rawSearch(SearchImpl.java:170)
    at org.identityconnectors.framework.impl.api.local.operations.SearchImpl.search(SearchImpl.java:129)
    at sun.reflect.GeneratedMethodAccessor624.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.identityconnectors.framework.impl.api.local.operations.ConnectorAPIOperationRunnerProxy.invoke(ConnectorAPIOperationRunnerProxy.java:98)
    at com.sun.proxy.$Proxy215.search(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor624.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.identityconnectors.framework.impl.api.local.operations.ThreadClassLoaderManagerProxy.invoke(ThreadClassLoaderManagerProxy.java:98)
    at com.sun.proxy.$Proxy215.search(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor624.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.identityconnectors.framework.impl.api.BufferedResultsProxy$BufferedResultsHandler.run(BufferedResultsProxy.java:159)

只是为了仔细检查,我使用未绑定的 ldap sdk 从命令行运行搜索,一切运行良好

C:\Users\esiykha\Projects\SFTP\Software\unboundid-ldapsdk-2.3.8-se\tools>ld
rch --hostname "localhost" --port 10389 --baseDN "o=sevenseas" --scope "sub
bjectclass=inetorgperson)" "userPassword" "uid"
# Connected to localhost:10389
dn: cn=Cornelius Buckley,ou=people,o=sevenseas
uid: cbuckley
userPassword: {SHA}nU4eI71bcnBGqeO0t9tXvY1u5oQ=

dn: cn=Thomas Masterman Hardy,ou=people,o=sevenseas
uid: thardy
userPassword: {SHA}nU4eI71bcnBGqeO0t9tXvY1u5oQ=

dn: cn=Fletcher Christian,ou=people,o=sevenseas
uid: fchristi
userPassword: {SHA}nU4eI71bcnBGqeO0t9tXvY1u5oQ=

dn: cn=John Hallett,ou=people,o=sevenseas
uid: jhallett
userPassword: {SHA}nU4eI71bcnBGqeO0t9tXvY1u5oQ=

dn: cn=William Bligh,ou=people,o=sevenseas
uid: wbligh
userPassword: {SHA}nU4eI71bcnBGqeO0t9tXvY1u5oQ=

dn: cn=Horatio Nelson,ou=people,o=sevenseas
uid: hnelson
userPassword: {SHA}nU4eI71bcnBGqeO0t9tXvY1u5oQ=

dn: cn=Moultrie Crystal,ou=people,o=sevenseas
uid: mchrysta
userPassword: {SHA}nU4eI71bcnBGqeO0t9tXvY1u5oQ=

dn: cn=Thomas Quist,ou=people,o=sevenseas
uid: tquist
userPassword: {SHA}nU4eI71bcnBGqeO0t9tXvY1u5oQ=

dn: cn=Horatio Hornblower,ou=people,o=sevenseas
uid: hhornblo
userPassword: {SHA}nU4eI71bcnBGqeO0t9tXvY1u5oQ=

dn: cn=William Bush,ou=people,o=sevenseas
uid: wbush
userPassword: {SHA}nU4eI71bcnBGqeO0t9tXvY1u5oQ=

dn: cn=John Fryer,ou=people,o=sevenseas
uid: jfryer
userPassword: {SHA}nU4eI71bcnBGqeO0t9tXvY1u5oQ=

# The search operation was processed successfully.
# Entries returned:  11
# References returned:  0

# Disconnected from the server
C:\Users\esiykha\Projects\SFTP\Software\unboundid-ldapsdk-2.3.8-se\tools>ld
rch --hostname "localhost" --port 10389 --baseDN "o=sevenseas" --scope "sub
bjectclass=inetorgperson)" "cn"
# Connected to localhost:10389
dn: cn=Cornelius Buckley,ou=people,o=sevenseas
cn: Cornelius Buckley

dn: cn=Thomas Masterman Hardy,ou=people,o=sevenseas
cn: Thomas Masterman Hardy

dn: cn=Fletcher Christian,ou=people,o=sevenseas
cn: Fletcher Christian

dn: cn=John Hallett,ou=people,o=sevenseas
cn: John Hallett

dn: cn=William Bligh,ou=people,o=sevenseas
cn: William Bligh

dn: cn=Horatio Nelson,ou=people,o=sevenseas
cn: Horatio Nelson

dn: cn=Moultrie Crystal,ou=people,o=sevenseas
cn: Moultrie Crystal

dn: cn=Thomas Quist,ou=people,o=sevenseas
cn: Thomas Quist

dn: cn=Horatio Hornblower,ou=people,o=sevenseas
cn: Horatio Hornblower

dn: cn=William Bush,ou=people,o=sevenseas
cn: William Bush

dn: cn=John Fryer,ou=people,o=sevenseas
cn: John Fryer

# The search operation was processed successfully.
# Entries returned:  11
# References returned:  0

# Disconnected from the server
C:\Users\esiykha\Projects\SFTP\Software\unboundid-ldapsdk-2.3.8-se\tools>

我进行了很多搜索,但找不到任何解决方案。

4

1 回答 1

0

晕厥用户@邮件列表中询问了这个主题:

http://syncope-user.1051894.n5.nabble.com/Issues-connecting-apache-syncope-with-apache-DS-td5708095.html

请在那里跟进。

很快,您至少需要

  1. 设置 ONE-PHASE 传播模式
  2. 为 accountLink 指定 JEXL 表达式到用户映射页面
  3. 以 [1] 作为参考指南

[1] http://blog.tirasa.net/unlock-full-ldap-features-in

于 2015-07-22T10:46:54.643 回答