Active Directory

导出、 比较,和同步 Active Directory 架构

John Policelli

概览:

  • 使用 LDIFDE 从源目录林导出架构
  • 比较使用 Active Directory DS / LDS 架构分析器的架构
  • 导入到目标目录林的架构

内容

从源代码林导出架构
比较 Active Directory 架构
使用缺少的元素创建的 LDIF 文件
导入到目标目录林的架构
向上覆盖

每个 Active Directory 目录林具有其自己架构定义的对象和目录服务用来存储数据的属性。 当组织具有多个 Active Directory 目录林时,IT 管理员必须管理多个 Active Directory 架构的 ; 管理多个目录林时,确保架构之间的一致性是重要。 此文章中, 我将指导您完成简化进程管理多个 Active Directory 架构。

架构同步和比较的灵活性

我已经详细这篇文章的最大的好处之一是过程的它不独占 Active Directory 架构管理。 此过程也可用于同步 Active Directory、 ADAM (Active Directory 应用程序模式) 和 AD LDS 目录的各种组合之间的架构。 同步以下之间的架构执行架构同步:

  • Active Directory 和 Active Directory
  • ADAM 和 ADAM
  • AD LDS 和 AD LDS
  • Active Directory 和 ADAM
  • Active Directory 和 AD LDS
  • AD LDS 和 ADAM

此过程也可用于进行比较的架构匹配 ween Active Directory、 ADAM 和 AD LDS 目录的各种组合。 可以比较以下之间的架构执行架构比较:

  • Active Directory 和 Active Directory
  • ADAM 和 ADAM
  • AD LDS 和 AD LDS
  • Active Directory 和 ADAM
  • Active Directory 和 AD LDS
  • AD LDS 和 ADAM
  • Active Directory 和 LDIF 文件
  • ADAM 和 LDIF 文件
  • AD LDS 和 LDIF 文件

组织可部署多个生产 Active Directory 林各种业务或技术的原因。 通常,其他 Active Directory 目录林部署和在部署生产林后。 在某些情况下,这是年更高版本。

一个十年前几乎发布 Active Directory。 年,组织肯定已对其生产林的大量架构修改。 标识这些到目录林的架构修改是一项困难的任务。 很难更确保对生产林以前的架构修改以一致的方式进行新的测试目录林中。

本文,我重点要部署一个新的用户验收测试将由最终用户测试利用 Active Directory 进行身份验证和授权的应用程序的 (UAT) Active Directory 林方案。 生产 Active Directory 架构中存在的五个自定义属性,您需要确保从源生产林中架构是与新的目标 UAT 目录林保持一致。

有大量的方案,但是,在它您可以使用的进程我在此讨论文章来简化管理多个架构。 更多关于此请参阅侧栏"的架构同步和比较灵活性"。

从源代码林导出架构

第一步是从源目录林导出架构。 这是必需的以便您以后可以比较在目标林中的架构,以决定哪些属性和类来同步源目录林的架构。

LDIFDE 命令行工具,随 Windows Server 2003 和 Windows Server 2008,可用于从源目录林导出架构。 此工具创建格式与在 LDAP 数据交换格式 (LDIF) 文件。 没有特殊的权限是从在源目录林导出架构并且任何域用户可以执行此任务。

从源目录林中导出架构,请执行下列操作:

  1. 登录到成员服务器或域控制器。
  2. 打开命令提示符窗口。
  3. 到命令提示符窗口键入以下内容:
ldifde -f PRODSchema.ldif -d CN=Schema,CN=Configuration,DC=WS08DOMAIN01,DC=local
  1. 按 Enter。

图 1 显示了您将看到该命令的输出。

fig01.gif

图 1 导出源目录林中的该架构

在此命令-f PRODSchema.ldif 参数,请告诉 LDIFDE to 写入到名为 PRODSchema.Ldif 文件的输出。 在-d CN = Schema,CN = Configuration,DC = WS03DOMAIN01,DC = 本地参数告诉 LDIFDE 将架构分区作为 LDAP 搜索的根目录。 DC = WS08DOMAIN01,DC = 必须用源林中的林根域的可分辨名称中替换命令的本地的一部分。

fig02.gif

图 2 加载目标架构窗口

比较 Active Directory 架构

现在,您已从源目录林导出架构,现在可以进行比较的目标目录林中此架构。 此步骤允许您识别任何属性和位于源目录林,但不存在在目标目录林中的类。

在安装了 Active Directory 轻型目录服务服务器角色时,Windows Server 2008 将包括 AD DS / LDS 架构分析器工具。 它可以用于多种不同的方式比较架构。 请注意此工具在 Windows Server 2003 中以前称为 AD 架构分析器。 本文,我引用作为 AD DS / LDS 架构分析器因为我的示例将 Windows Server 2008。 在比较和导出,步骤但是,也可以执行使用该工具的 Windows Server 2003 版本。

要比较源和目标目录林的 Active Directory 架构,执行以下操作:

  1. 登录到成员服务器或一个已安装的 AD LDS,并属于某个域在目标目录林中的域控制器。
  2. 找到 PRODSchema.ldif 文件在前一节中创建的并将它复制到您登录到服务器。
  3. 请转到开始,单击运行,,然后键入以下: C:\WINDOWS\ADAM\ADSchemaAnalyzer.exe
  4. 点击输入,并在 AD DS / LDS 架构分析器将打开。
  5. 在 AD DS / LDS 架构分析器窗口的文件菜单上, 单击加载目标架构。
  6. 在加载目标架构窗口中显示的 图 2 单击加载 LDIF 按钮。
  7. 浏览到 LDIF 文件的位置,然后单击打开。
  8. LDIF 文件将导入到 AD DS / LDS 架构分析器。
  9. 在文件菜单中上, 单击加载基础架构。
  10. 在将加载基础架构窗口中,输入域控制器可以连接到服务器 [: 端口] 字段,用户名、 一个的密码和在的域中所示 图 3 .
  11. 单击确定。
  12. 若要筛选非存在的元素,请从架构菜单中选择隐藏存在元素。 将属性节点下列出缺少的元素,如 图 5 所示。
  13. 展开属性节点并且将列在存在和非存在元素 (属性和类) 默认情况下。 目录林之间保持一致的属性显示该元素名称旁边的中的选中标记如 图 4 所示。 源林中存在,但从目标目录林缺少的元素将显示一个空框。

fig03.gif

图 3 负载基础架构窗口

fig04.gif

图 4 存在和丢失属性

fig05.gif

图 5 查看缺少的元素

fig06.gif

图 6 要包括的标记为不存在的元素

处理架构类对象中的域相对的 SID

如果源目录林中的架构已通过运行 adprep /rodcprep 命令准备只读域 cont-rollers (RODC),您可能需要在完成到目标目录林的导入架构后执行其他任务。 运行 adprep /rodcprep 命令时, 以下三个架构类可能必须在其默认安全描述符中的域相对于 SID:

  • 域 DNS
  • DMD
  • SAM-Domain

这些三个架构类默认安全描述符包含企业只读域控制器安全组,它可能包含域相对于 SID。 该安全组 SID 是 < 域 SID > 的窗体中-498。 是例如如果域 SID S-1-5-21-886666173-4210462831-1041481479,企业只读域控制器安全组 SID 将 S-1-5-21-886666173-4210462831-1041481479-498。 按将预期从源林中的域相对于 SID 不能在目标目录林中的安全描述符中可用。

在解决此问题所需的步骤因源和目标目录林在林功能级别 (FFL):

  • 如果在目标目录林的 FFL 的 Windows Server 2008 或更高版本,可以替换有问题的 SID 与"RO"。
  • 如果源目录林有一个 FFL 的 Windows Server 2008,并且在目标目录林有一个 FFL 早于 Windows Server 2008 (是例如 Windows Server 2003),需要"RO"在 SDDL 中的替换目标目录林的企业只读域控制器安全组的 SID。

只有 Windows Server 2008 域控制器了解"RO 的含义 ; Windows Server 2003 和 Windows 2000 Server 域控制器不。 因此,如果所有域 contro-llers 在目标目录林中都有安装,Windows Server 2008,并且不打算介绍都具有 Windows Server 2003 或 Windows 2000 Server 在以后安装的任何域控制器,应旨在"RO 用架构对象的默认安全描述符。 如果在目标目录林包含 Windows Server 2003 的域控制器或将安装 Windows 2000 Server,或可能会将来引入这些域控制器,您必须使用企业只读域控制器安全组,将包括域相对于 SID 的 SID。

使用缺少的元素创建的 LDIF 文件

现在您已完成 Active Directory 架构的比较,并标识该元素 (类和属性) 位于源目录林,但在目标目录林中不存在的。 您现在不得不创建另一个 LDIF 文件将包含这些缺少的元素。 这个新的 LDIF 文件将用于导入到目标架构的缺少的元素。

使用 AD DS / LDS 架构分析工具可以创建包含缺少的元素,通过执行以下的一个 LDIF:

  1. 要纳入 LDIF 文件 AD DS / LDS 架构分析器窗口中架构菜单上的所有缺少的元素单击标记为包括的所有非存在元素和然后单击确定确认。 若要控制的缺少的元素包括在 LDIF 文件,单击要包括的每个元素旁边的。 A 和 (+) 符号将被添加在的元素旁边,如 图 6 所示。
  2. 在 AD DS / LDS 架构分析器中文件菜单上单击创建 LDIF 文件。
  3. 在选择 LDIF 文件窗口中输入 LDIF 文件中的位置和文件名,然后单击保存。

导入到目标目录林的架构

此过程中的在最后一步是到目标目录林中导入 Active Directory 架构。 LDIFDE 工具可从源目录林的缺少的元素导入目标目录林。 前面已提到缺少的元素包含在 AD DS / LDS 架构分析器刚刚创建 LDIF 文件。

要导在目标目录林的 Active Directory 架构,使用 Enterprise Admins 和 Schema Admins 组,可以执行以下任务的成员的帐户:

  1. 登录到域控制器持有架构主操作主机角色。
  2. 打开命令提示符窗口。
  3. 在命令提示符窗口中键入以下内容:
ldifde -i -f MissingElements.ldf -c dc=X 
DC=WS08DOMAIN02,DC=net
  1. 点击输入。

在此命令,-i 参数指示要执行导入的 LDIFDE。 -f MissingElements.ldf 参数告诉 LDIFDE to 从名为 MissingElements.ldf 文件导入。 -c dc = X DC = WS08DOMAIN02,DC = net 参数告诉 LDIFDE to 替换所有实例 dc = 与 DC 的 X = WS08DOMAIN02,DC = net。 DC = WS08DOMAIN02,DC = net 命令的一部分必须替换目标林中的林根域的可分辨名称。

向上覆盖

到目前为止在目标目录林中的架构已扩展为包括缺少的元素。

Active Directory 架构管理是一个复杂的任务。 并且它成为更复杂,在您的环境中部署多个 Active Directory 目录林时。 但是,通过本文所述的过程您可以简化管理多个 Active Directory 架构并确保跨所有目录林具有一致的架构。

John Policelli (Microsoft MVP 目录服务、 MCTS、 MCSA、 ITSM、 iNet +、 网络 + 和 A +) 是一个解决方案中心 IT 顾问通过体系结构、 安全、 战略规划和灾难恢复计划中体验的十年。 John 已花费在过去 9 年专注于身份和访问管理并提供某些在加拿大的 Active Directory 的最大安装认为领导能力。 您可以 brian.noyes 在他的博客 policelli.com/blog.