16.6. 同步组
与用户条目一样,组不会在 Directory 服务器和 Active Directory 之间自动同步。必须配置同步这两个指令:
- 如果在同步协议中通过选择 Sync New Windows Groups 选项,则 Active Directory 域中的组会被同步。在同步启动时,所有 Windows 组都会复制到目录服务器中,然后在创建时同步新组。
- Directory Server 组帐户通过 Directory Server 条目中存在的特定属性与 Active Directory 同步。任何目录服务器条目都必须具有 ntGroup 对象类和
ntGroupCreateNewGroup
属性;ntGroupCreateNewGroup
属性(即使在一个现有的条目中)会向目录服务器 Windows 同步发送信息,将条目写入 Active Directory 服务器。在下次常规更新时,创建并同步了 ntGroup 对象类的新或修改的组。
重要
同步组时,也会同步其所有成员的列表。但是,除非启用了用户同步并应用到这些条目,否则成员条目本身不会被同步。
如果某些用户不存在,当应用程序或服务试图对 Active Directory 服务器上的所有成员都执行操作时,可能会造成问题。
另外,组还有几个其他通用属性:
- 两个属性控制是否在 Active Directory、
ntGroupCreateNewGroup
和ntGroupDeleteGroup
上创建和删除 Directory Server 组。需要ntGroupCreateNewGroup
将目录服务器组同步到 Active Directory。 - ntUserDomainId 包含 Active Directory 域中条目的唯一 ID。这是 ntGroup 对象类的唯一必需属性。
- ntGroupType 是 Windows 组的类型。Windows 组类型是 global/security、domain local/security、builtin、generic/security、global/distribution、domain local/distribution 或 Universal/distribution。这为同步的 Windows 组自动设置,但必须在 Directory Server 条目上手动设置这些属性,然后才能同步。
16.6.1. 关于 Windows 组类型 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
在 Active Directory 中,有两个主要的组类型:安全性和分发。安全组与目录服务器中的组最相似,因为安全组可以针对访问控制、资源限制和其他权限配置策略。分发组用于邮件分发。它们进一步分为全局和本地组。Directory Server ntGroupType 支持所有四个组类型:
-2147483646
用于全局/安全(默认)-2147483644
用于域本地/安全-2147483643
用于内置-2147483640
用于 universal/security2
代表全局/发布4
用于域本地/发布8
用于通用/发布
16.6.2. 目录服务器和 Active Directory 之间的组属性 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
只有 Directory 服务器和 Active Directory 的部分属性会同步。这些属性是硬编码的,无论条目同步的方式是什么。条目中存在的任何其他属性(在 Directory Server 或 Active Directory 中)均不受同步的影响。
Directory 服务器和 Active Directory 组条目中使用的一些属性是相同的。它们通常是在 LDAP 标准中定义的属性,在所有 LDAP 服务间都很常见。这些属性会完全同步到另一个属性。表 16.4 “组条目属性,即 Directory 服务器和 Active Directory 之间相同” 显示目录服务器和 Windows 服务器之间相同的属性。
有些属性会定义相同的信息,但属性的名称或其架构定义有所不同。这些属性在 Active Directory 和 Directory Server 之间映射,因此一个服务器中的属性 A 被视为另一个服务器上的属性 B。对于同步,许多属性都与 Windows 相关的信息相关。表 16.3 “Directory 服务器和 Active Directory 之间的组条目属性映射” 显示目录服务器和 Windows 服务器之间映射的属性。
有关 Directory 服务器和 Active Directory 处理某些模式元素的不同信息,请参阅 第 16.6.3 节 “Red Hat Directory Server 和 Active Directory 之间的组架构差异”。
目录服务器 | Active Directory | ||
---|---|---|---|
cn | name | ||
ntUserDomainID | name | ||
ntGroupType | groupType | ||
| 成员[a] | ||
cn | o |
description | ou |
l | seeAlso |
虽然 Active Directory 支持与目录服务器相同的基本 X.500 对象类,但有一些管理员应该注意的不兼容。
支持嵌套组(其中组包含另一个组作为成员),并且同步 Windows 同步。但是,Active Directory 会实施某些限制,来作为嵌套组的组成。例如,不允许将域本地组作为成员包含。目录服务器没有本地和全局组的概念,因此可以在 Directory Server 一侧创建条目,以便在同步时违反 Active Directory 的约束。
16.6.4. 为目录服务器组配置组同步 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
要使目录服务器组同步到 Active Directory,组条目必须设置适当的同步属性。
若要通过命令行启用同步,请将所需的同步属性添加到条目中,或创建具有这些属性的条目。
同步需要三个模式元素:
- ntGroup 对象类。
ntUserDomainId
属性,为条目指定 Windows ID。ntGroupCreateNewGroup
属性,用于向同步插件发出信号,以将 Directory Server 条目同步到 Active Directory。ntGroupDeleteGroup
属性是可选的,但如果在 Directory 服务器中删除,则此设置是否从 Active Directory 域自动删除。
另外,还建议添加
ntGroupType
属性。如果没有指定此属性,则组会自动添加为全局安全组(ntGroupType:-2147483646)。
例如,使用
ldapmodify
:
很多额外的 Windows 和组属性可以添加到条目中。所有同步的模式都列在 第 16.6.2 节 “目录服务器和 Active Directory 之间的组属性” 中。Red Hat Directory Server 11 配置、命令和文件参考 中更详细地描述了特定于 Windows 的属性,属于 ntGroup 对象类。
16.6.5. 为活动目录组配置组同步 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
同步 Windows 用户(源自 Active Directory 域)的用户在同步协议中配置。
启用组同步:
dsconf -D "cn=Directory Manager" ldap://server.example.com repl-winsync-agmt set --sync-groups="on" --suffix="dc=example,dc=com" example-agreement
# dsconf -D "cn=Directory Manager" ldap://server.example.com repl-winsync-agmt set --sync-groups="on" --suffix="dc=example,dc=com" example-agreement
要禁用组同步,请将
--sync-groups
选项设置为 off。