【发布时间】:2023-03-27 14:13:01
【问题描述】:
使用 LDAP 运行我的 SSIS 时,我的 ADO 数据源上出现此错误:
[LDAP 源 1] 错误:组件“LDAP 源”(1) 无法 处理数据。 'ADsDSOObject' 失败,没有错误消息 可用,结果代码:-2147016669(0x80072023)。
[SSIS.Pipeline] 错误:SSIS 错误代码 DTS_E_PRIMEOUTPUTFAILED。这 组件“LDAP Source”(1) 上的 PrimeOutput 方法返回错误代码 0xC02090F5。管道时组件返回失败代码 引擎称为 PrimeOutput()。故障码的含义是 由组件定义,但错误是致命的,并且管道 停止执行。在此之前可能会发布错误消息 提供有关失败的更多信息。
我在我的连接管理器中使用用于 Microsoft 目录服务的 OLE DB 提供程序将 ADO 连接设置为 ADO.NET 连接。示例如下:
我正在使用 ADO.NET 数据源来使用如下所示的 LDAP 查询来查询我的 AD:
SELECT sAMAccountName,cn FROM 'LDAP://DC=domain,DC=net' WHERE sAMAccountType = 805306368
在运行我的数据预览时,它可以很好地拉取预览。但是在运行包时,它不会通过数据源而不抛出上述错误。注意:我还尝试在 ADO.NET 连接上将 ADSI 标志更改为 1。
在将 ADO.NET 连接与 Microsoft Directory Services Provider 的 OLE DB 提供程序一起使用之前,有没有其他人看到过此错误?
【问题讨论】:
-
我收到有关与 ADO.NET 提供程序和 AD 类型不兼容的数据类型的警告,但我能够从本地 AD 中恢复 sAMAccountName 和 cn。我会到处玩,看看能不能找到什么,
-
您不会尝试在您的选择列表中读取类似 memberof 的内容,对吧?以上是完整的列列表吗?尝试删除和读取 ado 网络源?将选择列表缩减为 1 列,然后慢慢重新添加它们,看看您是否能找出导致失败的原因。在源的高级编辑器中,查看您的列 DataType,它们都是 unicode 流 (DT_NTEXT)
-
在尝试了所有这些选项后,我仍然遇到同样的错误。是否必须启用 AD 端的某些功能?我看不到它是权限错误,因为当我在数据源上单击“预览”时,它会提取值。