域架构可以通过以下比喻进一步理解

    ·域可以形容为一座大楼。

    ·每个楼层好比组织单元。

    ·每个房间好比域对象,例如用户、计算机账户等。

    ·每个楼层中包含多个房间,可以理解为每个组织单元中包含多个域对象。

    ·每个房间多人一起工作,数人组成一个工作组,可以理解为域中的组。每个组各自为政,完成不同的工作。

    因此,组织单位对于AD DS域服务的管理更有弹性,能发挥“分层负责、授权自治”的优点,若能善用组织单元,能尽量避免形成多域架构,节省企业管理成本。


组织单位架构

    Organization Unit(组织单位,简称OU)是一个容器对象,可以吧域中的对象组织成逻辑组,帮助网络管理员简化管理工作。组织单位可以包含下列类型的对象:用户、计算机、工作组、打印机、应用程序、安全策略、文件共享、其他组织单位等。可以在组织单位基础上部署组策略,统一管理组织单位中的域对象。


默认域架构

    域部署完成后,默认创建三层结构的管理体系,分别为:域(book.com)、组织单位(默认容器,在此称之为组织单位,例如Users),以及域对象(用户、计算机、组等)


默认组织单位位置

    1.“Users”组不创建组织单位

    域架构组织容器中,除了“Domain Controllers”容器外(该容器默认是组织单位),其他任何默认容器中都不能创建组织单位,以“Users”组为例。右击“Users”默认容器,在弹出的快捷菜单中选择“新建”选项,在弹出的级联菜单中显示可以创建的域对象,在“Users”组中不能创建组织单位。

    2.域级别能够创建组织单位

    右击“book.com”,在弹出的快捷菜单中选择“新建”选项,在弹出的级联菜单中显示可以参创建的域对象,域级别可以创建组织单位。

    3.新建组织单位内支持组织单位创建功能

    新建的组织单位支持组织单位嵌套功能,可根据需要创建多层组织单位。


如何规划组织单位架构

    组织单位规划没有统一规划方式,企业应该根据自身的行政管理架构、地理位置等综合考虑,符合自身需要的架构模型就是最佳模式。

    1.企业角度分析

    企业可以按部门把所有的用户和设备组成树形层次架构,也可以按地理位置形成层次架构,还可以按功能和权限分成多个组织单位层次脚骨。通过组织单位的包容功能,组织单位形成清楚的层次架构,这种包容架构可以使管理者把组织单位切入到域中以反应出企业的行政组织架构并且可以委派任务与授权。建立包容架构的组织模型能够帮助解决许多问题,大型的域、域树中每个对象都可以显示在目录中,用户就可以利用一个服务功能轻易地找到某个对象而不管它在域树架构中的位置。

    2.独立管理

    组织单位层次架构局限于域的内部,所以一个域中的组织单位层次架构域另一个域中的组织单位层次架构没有任何关系。因此,一个企业有可能只用一个域来构造企业网络,这时就可以使用组织单位对对象进行分组,形成多种管理层次架构,从而极大地简化网络管理工作。组织中的不同部门可以成为不同的域,或者一个组织单位,从而采用层次化的命名方法来反映组织架构和进行管理授权。根据组织架构进行细化的管理授权可以解决很多管理上的问题,在加强中央管理的同时,又不失机动灵活性。

    例如,企业中部署域book.com,总部设置在北京,在上海、广州等地都有份公司,上海、广州等有自己独立的行政管理架构,可以使用架构模式规划组织单位。

    上例中形成的组织单位架构,让人一目了然,通过组织单位就可以清楚地展现企业的管理架构。部署组织单位的目的,就是为了方便管理。例如,为了便于管理用户,组织单位结合用户属性、组策略,为用户统一分配资源。

    使用“dsquery ou”命令查看创建的组织单位。


组织单位和组的区别

    1.相同点

    组织单位和组都是容器,都是域服务的一种对象。

    2.不同点

    组织单位就像屋子,当同一个人在屋子里面时,这个人就不可能在商场,或者公园中。也就是说,一个人在一个组织单位中时,就不可能在另外的一个组织单位中。

    组标识用户具备的权利和权限,用户可以在不同组中,将具备不同的权限,用户所具备的权限就是所有不同的组的权限和交集。

    组织单位是体现管理模型,而组是权利和权限的集合。


组织单位设计原则

    1.总体设计目标

    设计组织单位架构时,基本原则是“简单性”+“适应性”=“可持续性”。如果设计过于简单,则可能并不适用,因此将不得不过于频繁地进行更改。如果设计适用性强,则所有内容都讲被分类,这回适情况变得过于复杂。

    2.管理目标

    无论任何时候建立组织单位,最重要的是决定谁能浏览和控制特定对象,以及每个管理员对该对象拥有哪些层级的管理。除此之外,也必须决定哪个管理员将能全域存取特定组织单位和对象、哪个管理员将受到限制以及受限的程度。

    组织单位必须能够反映企业架构的细节,可以建立组织单位来减少对那些小型的使用者、群组、资源的管理控制。管理控制的权限可以是完全的(能建立使用者、更改密码、管理账户原则等),也可以是有限的(只能更改密码)。因为最顶层的组织单位可以包含其他层级的组织单位,因此如果需要的话应尽可能地讲细节延伸到各层级,应该讲这些对象纳入域工作和组织相符的逻辑架构中。

    利用组织单位能避免使用者由企业层级的网络管理员进行管理,执行诸如建立计算机账户、设定密码等,有效的方式为提供组织单位层级的管理,将网络管理员从琐碎的工作中解脱出来。通过限制对发布资源的授权访问,使用者将只能看到已被授权存取的对象。除非父域和父组织单位的安全性原则被指定不能使用,否则组织单位将继承它们。

    3.设计原则

    为企业建立组织单位时遵循以下原则。

    ·建立组织单位进行授权管理。

    ·建立一个逻辑性、有意义的组织单位架构,该架构可以使组织单位管理员有效率地完成工作。

    ·建立组织单位应用安全性原则。

    ·建立组织单位提供货限制特定使用者对发布资源的可见度。

    ·建立稳定的组织单位架构。组织单位也为企业提供名称空间的弹性以适应企业的变更需求。

    ·避免向任一组织单位分配过多的子对象。

    ·组织单位的层次建议越少也好。


组织单位管理任务

    组织单位就像一个仓库,可以存储用户、计算机、组、打印机、应用程序、安全策略、文件共享、其他组织单位等对象。在新建的组织单位中,默认没有任何对象。


创建组织单位

    1.Active Directory用户和计算机

    提示:如果选择“防止容器被意外删除”选项,则新建的组织单位将不能被移动和删除,即使“Domain Admins”组成员也不能删除。如果不选择此功能,可以正常删除和移动组织单位。

    2.DS命令组

    使用“dsadd ou”命令创建组织单位。在MSDOS

    dsadd ou ou=HR,dc=book,dc=local

    命令执行后,创建名称为“HR”的组织单位。注意,使用“dsadd ou”命令创建的组织单位,“防止容器被意外删除”功能没有启用。

    3.PowerShell命令组

    使用“New-ADOrganizationalUnit”命令创建组织单位。键入如下命令。

    New-ADOrganizationalUnit -Name:"HR" -Path:"DC=book,DC=local" -ProtectedFromAccidentalDeletion:$true

    命令执行后,创建名称为“HR”的组织单位,并启用“防止容器被意外删除”功能。


启用/禁用“防止容器被意外删除”功能

    创建组织单位时,如果选择“防止容器被意外删除”选项,管理员在移动或者删除组织单位时将出现错误,不能删除选择的组织单位。要完成移动或者删除功能,需要取消“防止容器被意外删除”选项。

    1.Active Directory用户和计算机

    2.PowerShell命令

    键入如下命令:

    Set-ADObject-Identity:"OU=HR,DC=book,DC=local" -ProtectedFromAccidentaDeletion:$false

    命令执行后,禁用组织单位“HR”中的“防止对象被意外删除”功能。

    Set-ADObject-Identity:"OU=HR,DC=book,DC=local" -ProtectedFromAccidentalDeletion:$true

    命令执行后,启用组织单位“HR”中的“防止对象被意外删除”功能。


移动组织单位

    组织单位之间移动,注意是否启用“防止对象被意外删除”功能,如果启用该功能,不能再组织单位之间移动。

    1.Active Directory用户和计算机

    如果组织单位启用“防止容器被意外删除”功能,移动用户时将出现错误。确认需要移动启用该功能的组织单位,首先需要取消“防止容器被意外删除”选项,然后正常移动即可。

    提示

    Windows Server 2012操作熊支持“拖拽”功能,选择需要移动的组织单位,按住左键,将组织单位拖动到目标容器上,放开左键即可完成组织单位的移动。

    2.DS命令组

    使用“dsmove”命令移动组织单位。在命令行提示符下,键入如下命令

    dsmove OU=销售中心,OU=广州分公司,DC=book,DC=local -newparent OU=HR,DC=book,DC=local

    命令执行后,将组织单位移动到新位置。

    3.PowerShell命令组

    使用“PowerShell命令”将组织单位提动到其他组织单位中。键入以下命令。

    Move-ADObject -Identity:"OU=销售中心,OU=广州分公司,DC=book,DC=local" -TargetPath:"OU=HR,DC=book,DC=local"

    命令执行后,将组织单位“OU=销售中心,OU=广州分公司,DC=book,DC=local”移动到“HR组织单位”中。


重命名组织单位

    PowerShell命令组

    使用“Rename-ADObject”命令重命名组织单位。

    Rename-ADObject -Identity:"OU=HR,DC=book,DC=local" -NewName:"HRHR"

    命令执行后,重命名组织单位。


删除组织单位

    2.DS命令组

    使用“dsrm”名字删除目标组织单位。在命令行提示符下,键入如下命令。

    Dsrm OU=HR,DC=book,DC=local

    命令执行后,提示是否要删除组织单位,键入“Y”命令后即可删除目标组织单位。

    3.PowerShell命令组

    使用“Remove-ADObject”命令删除目标组织单位。使用以下命令。

    命令执行后,单击“是”按钮,删除目标组织单位。


查找组织单位

    当域内的组织单位达到一定数量后,管理员将忘记组织单位的正确位置,查找功能可帮助管理快速的定位到指定目标。

    2.DS命令组

    使用“Dsquery ou”命令查询域中创建的所有组织单位。在命令行提示符下,键入如下命令。

    Dsquery ou

    命令执行后,显示当前域中所有组织单位。

    查询域中以“人力”开头的所有组织单位,在命令行提示符下,键入如下命令。

    Dsqueryh ou -name 人力*

    命令执行后,输出以“人力”开头的所有组织单位。

    3.PowerShell命令组

    使用“Get-ADOrganizationalUnit”命令查询域中所有组织单位。键入如下命令。

    Get-ADOrganizationalUnit

    命令执行后,显示当前域中所有组织单位。

    查询域中以“人力”开头的所有组织单位,键入如下命令。

    Get-ADOrganizationalUnit-Filter"Name-like"人力*"""

    命令执行后,输出以“人力”开头的所有组织单位。


组织单位委派控制

    如果域中的用户数量众多,域管理员管理所有用户,工作效率会比较低。如果每个部门赋予一个用户具备管理用户的权限,域管理员可以从人事信息基本管理工作中脱离出来,同时工作效率会比较高,根据人员变动情况及时修改用户信息。因此,需要委托组织单位级别的控制。本例中委派用户“demo”对组织单位“广州分公司”具备完全控制的权限,可以创建用户、删除用户、修改密码等。


委派权限

    

权限测试

    用户“demo”被委派“广州分公司”管理权限后,“demo”用户使用Windows 7操作系统,使用“Active Directory用户和计算机”控制台管理域。