您好,欢迎来到宝玛科技网。
搜索
您的当前位置:首页Active Directory

Active Directory

来源:宝玛科技网


Active Directory

Active Directory就是我们常说的活动目录,在很多的情况下我们会听到这个词,有人说Active Directory就是把一个局域网的所有资源都当成目录的一部分来管理的一种服务。我整理一些资料希望对要研究Active Directory的人有点帮助。

Microsoft 的Active Directory 是一种目录服务,它提供用户信息、网络资源和服务等中心分层存储器。还可以扩展这个目录服务中的信息,同时存储企业感兴趣的自定义数据。例如,MicrosoftExchange Server 和Microsoft Dynamics 广泛使用Active Directory 来存储公共文件夹和其他项。

在Active Directory 发布之前,Exchange Server 使用它自己的私有存储器来存储对象。系统管理员必须为一个人配置两个用户ID:Windows NT 域中的用户账户(启用登录),和Exchange Directory中的用户账户。这是必需的,因为需要用户的其他信息(如电子邮件地址,电话号码等),NT 域的用户信息不能扩展,以添加需要的信息。

Active Directory 的功能

Active Directory 的功能可以总结为:

● Active Directory 中的数据以分层的方式组合。对象可以存储在其他容器对象中。用户并不是放在一个大型用户列表中,而是组合到组织单元中。因为组织单元可以包含其他组织单元,所以以这种方式可以构建一个树型视图。

● Active Directory 使用多主机复制方式(multimaster replication)。在Active

Directory 中,每个域控制器(DC)都是主机。在多主机模型中,更新可以应用于所有DC。与单主机模型相比,这个模型的伸缩性比较高,因为可以同时在不同的服务器上进行更新。该模型的缺点是复制起来比较复杂。本章后面会讨论复制问题。

● 灵活的复制拓扑(replication topology),这通过WAN 中的慢速链接支持复制。数据复制的频率由域管理员配置。

● Active Directory 支持开放标准。LDAP(Lightweight Directory Access Protocol,轻型目录访问协议)是一个Internet 标准,该标准用于访问许多不同目录服务,包括Active Directory 中的数据。在LDAP 中,也定义一个编程接口LDAP API。LDAP API 可以使用C 语言来访问Active Directory。在Active Directory 中使用的另一个标准是Kerberos,它用于身份验证。Windows Server Kerberos 服务也可用于验证UNIX 客户端的身份。

● 活动目录服务接口(Active Directory Service Interface,ADSI)定义访问目录服务的COM接口。ADSI 可以访问Active Directory 的所有功能。System.DirectoryServices 名称空间中的类包装ADSI COM 对象,用于从.NET 应用程序中访问目录服务。

● 目录服务标记语言(Directory Service Markup Language,DSML)是另一个访问目录服务的标准,它是于平台的方法,得到OASIS 组的支持。

● 细粒度安全性。对于Active Directory,细粒度安全性可用。存储在Active Directory 中的每个对象都可以有一个关联的访问控制列表,该列表确定谁可以对对象进行哪些处理。

目录中的对象都是强类型化的,这说明,对象的类型是精确定义的,没有给对象添加未指定的

属性。在架构中,定义了对象类型和对象的各部分(特性)。特性可以是必选的,也可以是可选的。

Active Directory 的概念

1. 对象

可以在Active Directory 中存储对象。对象可以是用户、打印机或网络共享。对象包含描述它们的必选特性和可选特性。例如,user 对象的特性包含姓、名、电子邮件地址和电话号码等。

2. 架构

每个对象是类的一个实例,这个类在架构中定义。架构可以定义类型,架构本身存储在ActiveDirectory 的对象中。必须区分classSchema 和 attributeSchema。对象的类型在classSchema 中定义,其必选特性和可选特性也在classSchema 中定义。attributeSchema 则定义特性的外观,以及特定特性的语法。

我们可以定义自定义类型和特性,并把它们添加到架构中。但要注意,不能从Active Directory中删除新架构类型。可以把它标记为未激活,这样就不能再创建新对象,但因为已有的对象可以是该类型,所以不能删除在架构中定义的类或特性。

Administrator 用户组没有足够的权限创建新架构项,此时需要Enterprise Admins 用户组。

3. 配置

除了对象和存储为对象的类定义之外,Active Directory 本身的配置也存储在Active Directory 中。Active Directory 的配置存储所有站点的信息,如复制间隔等,这些都由系统管理员设置。因为配置本身存储在Active Directory 中,所以可以像访问Active Directory 中的所有其他对象那样访问配置信息。

4. Active Directory 域

域是Windows 网络的安全边界。在Active Directory 域中,对象以分层顺序进行存储。

5. 域控制器

一个域可以有多个域控制器,每个控制器存储域中的所有对象。没有主服务器,所有DC 都一视同仁。这是一个多主机模型。可以在域中跨服务器复制对象。

6. 站点

站点是网络中的一个位置,它至少拥有一个DC。如果企业有多个办事处,办事处用慢速网络链接来连接,就可以在一个域中使用多个站点。由于备份或可伸缩性原因,每个站点都有一个或多个DC 在运行。在一个站点的服务器之间复制数据,其间隔比较短,因为网络连接比较快。在跨站点的服务器之间进行复制的时间间隔可以配置得较长,这取决于网络的速度。当然,复制间隔由域管理员配置。

7. 域树

通过信任关系可以连接多个域。这些域共享公共架构、公共配置和全局目录(后面将介

绍全局目录)。公共架构和公共配置表示可以跨域复制该数据。域树共享相同的类和属性架构。不能跨域复制对象自身。

以这种方式连接的域就构成了域树。域树中的域有一个连续和分层的名称空间。这表示,子域的域名是把子域的名称追加到父域名后。在这些域之间,建立使用Kerberos 协议的信任关系。

8. 森林

使用公共架构、公共配置和全局目录来连接多个域树,但没有使用连续的名称空间,该名称空间称为森林(forest)。森林是一组域树。如果公司有使用不同域名的子公司,就可以使用森林。域中的资源,反之亦然。使用森林,可以在多个域树之间建立信任关系。

9. 全局目录

对象的搜索可以跨越多个域。如果使用一些特性查找某个特定user 对象,就必须搜索每个域。

要加快搜索速度,可以把所有对象都复制到全局目录GC 中。GC 将被复制到森林的每个域中。在每个域中至少有一个服务器包含GC。出于性能和可伸缩性原因,在一个域中可以有多个GC 服务器。使用GC,可以在一个服务器上搜索所有对象。GC 是所有对象的只读缓存,GC 只能用于搜索;必须使用域控制器更新。并不是对象的所有特性都存储在GC 中。可以定义特性是否和对象一起保存。特性是否存储在GC 中,主要取决于该特性在搜索中使用的频率。如果特性在搜索中使用得很频繁,把它放在GC中,搜索就会比较快。用户的一幅图片在GC 中不是很有用,因为我们从来不会搜索该图片。相反,在存储器中

添加电话号码就比较有用。还可以定义该特性是否应被索引,如果进行索引,对该特性的查询就比较快。

10. 复制

Active Directory 使用了多主机服务器体系结构。域中的每个域控制器都可以进行更新。复制延迟时间定义了更新开始之前等待的时间。

● 如果某些特性发生变化,默认情况下,站点中每隔5 分钟就发布一次变更通知,通知的内容是可配置的。因为发生改变的DC 每隔30 秒就通知另一个服务器,所以第4 个DC 可以在7 分钟后得到变更通知。在默认情况下,把跨站点的变更通知设置为180 分钟。站点之间和内部的复制可以配置为其他值。

● 如果没有发生改变,在站点内,每隔60 分钟就进行一次预定复制。这将确保不遗漏一个变更通知。

● 对于敏感的安全信息,如账户被锁,会立即发出通知。进行复制后,就只把改动的内容复制到DC 中。在每次修改特性后,就会记录版本号(USN,更新序列号)和时间戳。如果更新不同服务器上的同一个特性,这就可以用于解决冲突。

下面看一个示例。用户John Doe 的移动电话特性的USN 号为47。这个值已经复制到所有DC中。一个系统管理员改变电话号码。在服务器DC1 上发生改变后;在服务器DC1 上这个特性的新USN 现在是48,而其他域控制器的USN 仍是47。如果有人读取该特性,就会读取旧值,直到所有域控制器都进行复制为止。

下面的情况很少发生:另一个管理员改变电话号码特性,选择另一个域控制器,因为这个管理员从服务器DC2 中接收到一个比较快的响应。在服务器DC2 上,这个特性的USN 也改为48。在通知的间隔期间,发出通知的原因是特性的USN 改变,上次进行复制时,USN 的值是47。使用复制机制可以检测到服务器DC1 和DC2 的电话号码特性的USN 都是48。虽然使用哪个服务器上的特性值并不重要,但必须使用其中一个服务器上的特性值。要解决这个冲突,就要使用改变的时间戳。因为DC2 上的改变比较迟,所以会复制存储在DC2 域控制器中的值。

Active Directory 数据的特征

假如Active Directory 没有替代关系数据库或注册表,那么什么数据可以存储在Active Directory 中?

● Active Directory 可以存储分层数据,容器也可以存储其他容器和对象。容器本身也是对象。

● 数据应主要用于读取。因为在一定的时间间隔中会进行复制,所以不能确定可以读取到最新的数据。在应用程序中,必须注意读取的信息有可能不是最新的信息。

● 数据应是企业普遍感兴趣的数据。因为给架构添加一个新数据类型,会把该数据类型复制到企业的所有服务器上。如果只有一小部分用户对该数据类型感兴趣,企业的域管理员就不会安装新的架构类型。

● 存储的数据量应合适,因为这些数据是要被复制的。如果存储数据量是100KB,而且每星期仅修改一次数据,把它存储在目录中就不会出问题。但如果每小时修改一次数据,

这个数据量就太大了。总是要考虑到数据复制到不同的服务器上、数据要传输到什么地方、复制的时间间隔等。如果数据量比较大,就要链接到Active Directory 中,并把数据存储到另一个地方。总之,存储在Active Directory 中的数据应分层组织,且数据量应合理,这对企业非常重要。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- baomayou.com 版权所有 赣ICP备2024042794号-6

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务