连接到 Active Directory
概念信息
Active Directory 是 Microsoft 的目录服务器,它提供一个 LDAP 兼容数据库,其中包含用户、组和计算机等对象。使用 Active Directory 数据连接器导入您的组织的 Active Directory 数据。
有关 Azure Active Directory 连接器的信息,请参阅连接到 Azure Active Directory。
说明
您不能独立于 Analytics 使用此连接器。您可以使用 Windows ODBC 数据源管理器为连接器驱动程序配置一个 DSN,但是您必须从 Analytics 内部而不是从连接器的 Windows DSN 配置对话框中测试 DSN 连接。
开始之前
要连接到 Active Directory 数据,您必须收集以下信息:
- Active Directory 服务器的域名或 IP 地址
- 正确的连接端口
- 进行连接的用户账户,包括可辨别的用户名和密码
有关收集连接必备信息的帮助,请联系您组织中的 Active Directory 管理员。如果您的管理员不能帮助您,您或者您的管理员应该联系Active Directory支持人员。
创建 Active Directory 连接
- 从 Analytics 主菜单中选择导入 > 数据库和应用程序Analytics。
- 从新建连接选项卡中,在 ACL 连接器部分中,选择 Active Directory。
提示
您可以通过在过滤连接框中输入搜索字符串来过滤可用连接器的列表。连接器按字母顺序排列。
- 在数据连接设置面板中,输入连接设置,然后在面板底部单击保存并连接。
您可以接受默认的连接名称,也可以输入一个新的名称。
Active Directory的连接被保存到现有连接选项卡。将来,您可以从已保存的连接重新连接到Active Directory。
一旦连接被建立,“数据访问”窗口将打开到暂存区域,并且您可以开始导入数据。有关从Active Directory导入数据的帮助,请参见使用数据访问窗口。
连接设置
基本设置
| 设置 | 描述 | 示例 |
|---|---|---|
| 用户 |
用户的可分辨名称。 此域和“密码”一起被用来向 Active Directory 服务器进行认证。 |
MYDOMAIN\test |
| 密码 |
指定用户的可分辨名称的密码。 此域和“用户”一起被用来向 Active Directory 服务器进行认证。 说明 如果您的 Active Directory 服务器允许匿名连接,则您无需提供密码即可连接。基于您的服务器的安全配置,匿名连接可能能够列出可用的表。但是,此类连接可能无法从列出的部分或所有表中选择数据。有关您的 Active Directory 安全配置的详细信息,请咨询您的公司的管理员。 |
|
| 服务器 |
Active Directory 服务器的域名或 IP 地址。 这不需要包括 LDAP:\\ 部分,而只需要包括服务器域名或 IP。 |
10.120.1.110 |
| 端口 |
运行 Active Directory 服务器的端口。默认值是 389。 此属性与“服务器”一起被用来指定 Active Directory 服务器。 |
389 |
| 基准 DN |
可辨别名称的基本部分,用于将结果限制到特定子树。 指定基本 DN 可以在为大型服务器返回条目时,通过限制需要检查的条目数大大提高性能。 |
DC=myConnection,DC=com |
| LDAP 版本 | 用来连接到服务器以及与服务器通信的 LDAP 版本。对于 LDAP 版本 2 和 3,有效的选项是 2 和 3。 | 2 |
| 认证机制 |
要在连接到 Active Directory 服务器时使用的认证机制:
|
SIMPLE |
| 范围 |
是否将搜索范围限制到:
提示 限制范围可大大提高搜索性能。 |
BaseObject |
高级设置
| 设置 | 描述 | 示例 |
|---|---|---|
| 使用默认 DC | 用来连接到默认域控制器以及使用当前用户凭据进行认证。 | 假 |
| 将日期时间转换为 GMT |
在导入过程中将日期时间域转换至 GMT 时区。如果为假,则该日期时间值被转换为运行 Analytics 的计算机的操作系统时区。 |
真 |
| 密钥大小限制 |
主键列的最大长度。将大小设置为 0 会使键长度恢复到原始长度。 此属性使连接器覆盖所有主键列的报告长度。 |
255 |
| 映射到 Long Varchar |
控制一个列是否被作为 SQL_LONGVARCHAR 返回。 使用此设置可映射任何大于指定大小的列,以便使它们被报告为 SQL_LONGVARCHAR 而不是 SQL_VARCHAR。 |
-1 |
| 映射到 WVarchar |
控制字符串类型是否映射到 SQL_WVARCHAR 而不是 SQL_VARCHAR。它在默认情况下被设置。 必须将字符串列映射到 SQL_WVARCHAR 以适应各种国际字符集,因此 MapToWVarchar 默认情况下被设置为真。您可以将其设置为假以改而使用 SQL_VARCHAR。 |
真 |
| 伪列 |
指示是否将伪列作为列包括在表中。 此设置在 Entity Framework 中特别有用,它不允许您为伪列设置值,除非该列是表列。 此连接设置的值的格式为 "Table1=Column1, Table1=Column2, Table2=Column3"。您可以使用“*”字符包括所有表和所有列。 |
MyTable=* |
| 大写标识符 | 以大写形式报告所有标识符(包括表名称和列名称)。 | 假 |
| SSL 服务器证书 |
要在使用 TLS/SSL 连接时从服务器接受的证书。您可以指定下列任一选项:
如果使用 TLS/SSL 连接,则此属性可被用来指定要从服务器接受的 TLS/SSL 证书。不被该计算机信任的任何其他证书都将被拒绝。 |
C:\cert.cer |
| 支持增强的 SQL |
通过启用内存客户端处理,增强 SQL 功能以超越可以通过 API 直接支持的功能:
说明 此设置必须为假以支持使用 where 子句语法进行过滤。 谓词的执行连接器确定哪些子句受到数据源的支持,然后将它们推送到数据源,以获取可满足查询的最小行超集。然后,它在本地过滤其余行。过滤器操作被简化,从而使驱动程序能够有效地对超大型数据集进行过滤。 联接的执行连接器使用各种技巧在内存中联接。驱动程序以牺牲内存利用率为代价,避免了多次读取相同表。 聚合的执行连接器检索在内存中处理聚合所需的所有行。 |
假 |
过滤所返回的行
Active Directory 连接器使用与 LDAP 搜索语法非常类似的 SQL 过滤语法。某些域包含表示多个对象属性的分隔数据。您的 WHERE 子句必须考虑这些分隔域中的每个值,就好像它们是不同的值,而不是单个字符串一样。
有关 LDAP 搜索过滤器的详细信息,请参见 MSDN 搜索过滤器语法。
按 ObjectCategory 和 ObjectClass 过滤用户
场景
您正在使用 User 表,并且您想要导入其 ObjectClass 具有以下属性的记录:
- 人员
- 用户
您还想要将记录限制到其 ObjectCategory 具有“计算机”属性而非“个人”属性的记录。
连接到该表
首先,您连接到 Active Directory 服务器,并且选择 User 表(所显示的域的子集)。
过滤记录
为了将记录限制到那些您想要导入的记录,您应用一个将每个分隔值视为一个独立域的过滤器。
然后,您使用 SQL 模式验证该过滤器构造的 WHERE 子句:
WHERE
(
"User"."ObjectClass" = N'person' AND
"User"."ObjectClass" = N'user' AND
"User"."ObjectCategory" = N'Computer'
)
过滤结果
应用该过滤器后,表中将包括匹配 WHERE 子句的记录,然后您导入该表。
联接 Active Directory 表
由于像 Active Directory 这样的 LDAP 兼容数据库中使用的数据模型,不建议执行 SQL 联接。联接操作可能生成意外的结果。
如果您需要联接 Active Directory 数据源中的一个或更多个表,您可以使用“数据访问”窗口导入多个表,然后在 Analytics 中连接它们。使用过滤器可限制记录数并提高效率。