Active Directory的基本概念
前言
本文是面对准备加入Active Directory编程的初学者的一份文章,主要是讲解Active Directory(活动目录)的一些概念和相关知识。这篇文章本来是不想写下来的,因为概念性内容的编写需要查阅很多的资料,也怕自己讲的不够明白亦或者存在局限性,但是在我入门的时候这方面的资料网上比较分散化,并没有一个统一完整的文章,而且讲解比较官方化难以理解,所以还是想把这篇文章补充上吧。这些概念的正确认识个人认为在初期非常的有必要,深入理解这些有关Active Directory(活动目录)的基本概念,将让我们在后面不论是用.NET Framework提供的API还是使用Windows PowerShell编程Active Directory有关程序的时候都会事半功倍。
Active Directory
Active Directory中文翻译为活动目录,这个概念不需要太过深入纠结,简单的理解它:Active Directory(活动目录)是微软Windows Server中,负责架构中大型网路环境的集中式目录管理服务(Directory Services),Windows 2000 Server开始内建于Windows Server产品中,它处理了在组织中的网路物件,物件可以是计算机,用户,群组,组织单元(OU)等等,只要是在Active Directory结构定义档(schema)中定义的物件,就可以储存在Active Directory资料档中,并利用Active Directory Service Interface来存取。
Actiove Directory作用
AD(Actiove Directory简称)微软构建这样的一个服务它的意义何在?个人认为可以分为以下几个方面来了解:
1.用户服务
管理用户的域账号、用户信息、企业通信录(与电子邮箱系统集成)、用户组管理、用户身份认证、用户授权管理、按需实施组管理策略等。这里不单单指某些线上的应用更多的是指真实的计算机,服务器等。C#语言能涉及的领域非常之广泛,根据Windows提供的.NET Framework和PowerShell完全可以做到监听某机器的按键或获取最高权限等操作。(网友的分享可以简单了解http://www.freebuf.com/articles/system/129412.html)。
2.计算机管理
管理服务器及客户端计算机账户、所有服务器及客户端计算机加入域管理并按需实施组策略。
3.资源管理
管理打印机、文件共享服务、网络资源等实施组策略。
4.应用系统的支持
对于电子邮件(Exchange)、在线及时通讯(Lync)、企业信息管理(SharePoint)、微软CRM,ERP等业务系统提供数据认证(身份认证、数据集成、组织规则等)。这里不单是微软产品的集成,其它的业务系统根据公用接口的方式一样可以嵌入进来。
5.客户端桌面管理
系统管理员可以集中的配置各种桌面配置策略,如:用户适用域中资源权限限制、界面功能的限制、应用程序执行特征的限制、网络连接限制、安全配置限制等。
Actiove Directory域架构常用对象
1.域(Domain).简单理解为:A公司总部
域(Domain)是AD的跟,是AD的管理单位。域中包含着大量的域对象,如:组织单位(Organizational Unit),组(Group),用户(User),计算机(Computer),联系人(Contact),打印机,安全策略等。
2.组织单位(Organization Unit).简单理解为:A公司的分公司
组织单位简称为OU是一个容器对象,可以把域中的对象组织成逻辑组,帮助网络管理员简化管理组。组织单位可以包含下列类型的对象:用户,计算机,工作组,打印机,安全策略,其他组织单位等。可以在组织单位基础上部署组策略,统一管理组织单位中的域对象。
3.群组(Group).简单理解为:某分公司里的某事业部
群组是一批具有相同管理任务的用户账户,计算机账户或者其他域对象的一个集合。例如公司的开发组,产品组,运维组等等。
群组类型分为两类:
安全组:用来设置有安全权限相关任务的用户或者计算机账户的集合。比如:Tiger组都可以登录并访问某ftp地址,并拿到某个文件。
通信组:用于用户之间通信的组,适用通信组可以向一组用户发送电子邮件。比如:我要向团队内10为成员都发送同一封邮件这里就要抄送9次,而使用组的话我直接可以发送给@Tiger,所有Tiger组内的成员都会收到邮件。
4.用户(User).简单理解为:某个工作人员
AD中域用户是最小的管理单位,域用户最容易管理又最难管理,如果赋予域用户的权限过大,将带来安全隐患,如果权限过小域用户无法正常工作。
域用户的类型,域中常见用户类型分为:
普通域用户:创建的域用户默认就添加到"Domain Users"中。
域管理员:普通域用户添加进"Domain Admins"中,其权限升为域管理员。
企业管理员:普通域管理员添加进"Enterprise Admins"后,其权限提升为企业管理员,企业管理员具有最高权限。
以上4个AD对象是我们入门必须尽快消化理解的概念。而AD中的对象概念还有很多,包括DNS,域林,域树,根域等等。以及有关计算机的概念如:独立服务器,成员服务器,域控服务器(这个是我们做AD开发的工程师们需要着重研究的),客户端计算机等。这里不再详细描述,如以后有需要会再做补充跟大家分享,一个大致的AD如下图所示。
Actiove Directory中数据结构
AD的数据结构为树形结构,层次结构。树状目录形管理,面向对象式的存储。域(Domin)--->组织单位(Organization Unit)--->群组(Group)--->用户(User)从左至右依次嵌套,形成树状型结构。有点像文件夹的存储方式。
需要注意的点:
1.OU里面可以再有OU一级一级嵌套进去,但是User是我们操作的最小管理单位。
2.在不区分主域控服务器和辅域控服务器时候,在同一域控服务器内,不能存在同名的域。正如不会存在两个同名的公司一样。
3.同一层级的OU中不能存在相同名称的OU,但是在不同层级的OU中是可以有相同名称的OU存在。比如北京分公司可以有移动事业部,上海分公司也可以有移动事业部。但是北京分公司里不会有两个一模一样名称的移动事业部,领导开会说的是哪个部分下面的人根本分不清,计算机其实有时候比人还要笨。
4.User在相同OU中不能出现同名的情况,在不同OU中是可以有相同名称的User存在的。但是在全局即整个Domain中是不允许出现相同用户登录名的用户存在的。用户登录名(UserPrincipalName)是User的一个属性可简单理解为User的全局唯一的属性(但是域对象有专门的Primary key,这里先不做介绍)。前面说AD里对象数据的存储是面向对象式的存储方式就在这儿。一个AD对象它附带着很多的属性,比如:User对象,在它的属性编辑器里大约有几百个属性,有一些是我们可以看到的,还有一些是微软不让我们看的。但是我们常用的属性根据业务场景的不同大约不会超过30个。后面在编程阶段会详解常用的属性。
结语
以上是本文的全部内容,对于LDAP协议,DN,CN等概念,个人认为在后面的实际编程章节中做介绍较为合理,所以在此省略。谢谢大家。
本文章最后修改时间:2017年4月9日 00:22.32
作者:IFire47 出处:http://www.cnblogs.com/IFire47/