1 LDAP入门
成都创新互联专注于企业成都全网营销、网站重做改版、章丘网站定制设计、自适应品牌网站建设、H5场景定制、商城网站定制开发、集团公司官网建设、外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为章丘等各大城市提供网站开发制作服务。
1.1 定义
LDAP是轻量目录访问协议(LightweightDirectory Access Protocol)的缩写,LDAP标准实际上是在X.500标准基础上产生的一个简化版本。
1.2 目录结构
LDAP也可以说成是一种数据库,也有client端和server端。server端是用来存放数据,client端用于操作增删改查等操作,通常说的LDAP是指运行这个数据库的服务器。只不过,LDAP数据库结构为树结构,数据存储在叶子节点上。
因此,在LDAP中,位置可以描述如下
因此,苹果redApple的位置为
dn标识一条记录,描述了数据的详细路径。因此,LDAP树形数据库如下
因此,LDAP树形结构在存储大量数据时,查询效率更高,实现迅速查找,可以应用于域验证等。
1.3 命名格式
LDAP协议中采用的命名格式常用的有如下两种:LDAP URL 和X.500。
任何一个支持LDAP 的客户都可以利用LDAP名通过LDAP协议访问活动目录,LDAP名不像普通的Internet URL名字那么直观,但是LDAP名往往隐藏在应用系统的内部,最终用户很少直接使用LDAP 名。LDAP 名使用X.500 命名规 范,也称为属性化命名法,包括活动目录服务所在的服务器以及对象的属性信息。
2 AD入门
2.1 AD定义
AD是Active Directory的缩写,AD是LDAP的一个应用实例,而不应该是LDAP本身。比如:windows域控的用户、权限管理应该是微软公司使用LDAP存储了一些数据来解决域控这个具体问题,只是AD顺便还提供了用户接口,也可以利用ActiveDirectory当做LDAP服务器存放一些自己的东西而已。比如LDAP是关系型数据库,微软自己在库中建立了几个表,每个表都定义好了字段。显然这些表和字段都是根据微软自己的需求定制的,而不是LDAP协议的规定。然后微软将LDAP做了一些封装接口,用户可以利用这些接口写程序操作LDAP,使得ActiveDirectory也成了一个LDAP服务器。
2.2 作用
2.2.1 用户服务
管理用户的域账号、用户信息、企业通信录(与电子邮箱系统集成)、用户组管理、用户身份认证、用户授权管理、按需实施组管理策略等。这里不单单指某些线上的应用更多的是指真实的计算机,服务器等。
2.2.2 计算机管理
管理服务器及客户端计算机账户、所有服务器及客户端计算机加入域管理并按需实施组策略。
2.2.3 资源管理
管理打印机、文件共享服务、网络资源等实施组策略。
2.2.4 应用系统的支持
对于电子邮件(Exchange)、在线及时通讯(Lync)、企业信息管理(SharePoint)、微软CRMERP等业务系统提供数据认证(身份认证、数据集成、组织规则等)。这里不单是微软产品的集成,其它的业务系统根据公用接口的方式一样可以嵌入进来。
2.2.5 客户端桌面管理
系统管理员可以集中的配置各种桌面配置策略,如:用户适用域中资源权限限制、界面功能的限制、应用程序执行特征的限制、网络连接限制、安全配置限制等。
2.3 AD域结构常用对象
2.3.1 域(Domain)
域是AD的根,是AD的管理单位。域中包含着大量的域对象,如:组织单位(Organizational Unit),组(Group),用户(User),计算机(Computer),联系人(Contact),打印机,安全策略等。
可简单理解为:公司总部。
2.3.2 组织单位(Organization Unit)
组织单位简称为OU是一个容器对象,可以把域中的对象组织成逻辑组,帮助网络管理员简化管理组。组织单位可以包含下列类型的对象:用户,计算机,工作组,打印机,安全策略,其他组织单位等。可以在组织单位基础上部署组策略,统一管理组织单位中的域对象。
可以简单理解为:分公司。
2.3.3 群组(Group)
群组是一批具有相同管理任务的用户账户,计算机账户或者其他域对象的一个集合。例如公司的开发组,产品组,运维组等等。可以简单理解为分公司的某事业部。
群组类型分为两类:
2.3.4 用户(User)
AD中域用户是最小的管理单位,域用户最容易管理又最难管理,如果赋予域用户的权限过大,将带来安全隐患,如果权限过小域用户无法正常工作。可简单理解成为某个工作人员。
域用户的类型,域中常见用户类型分为:
一个大致的AD如下所示:
总之:Active Directory =LDAP服务器 LDAP应用(Windows域控)。ActiveDirectory先实现一个LDAP服务器,然后自己先用这个LDAP服务器实现了自己的一个具体应用(域控)。
3 使用LDAP操作AD域
特别注意:Java操作查询域用户信息获取到的数据和域管理员在电脑上操作查询的数据可能会存在差异(同一个意思的表示字段,两者可能不同)。
连接ad域有两个地址:ldap://XXXXX.com:389 和 ldap://XXXXX.com:636(SSL)。
端口389用于一般的连接,例如登录,查询等非密码操作,端口636安全性较高,用户密码相关操作,例如修改密码等。
域控可能有多台服务器,之间数据同步不及时,可能会导致已经修改的数据被覆盖掉,这个要么域控缩短同步的时间差,要么同时修改每一台服务器的数据。
3.1 389登录
3.2 636登录验证(需要导入证书)
3.3 查询域用户信息
3.4 重置用户密码
3.5 域账号解锁
总结
简单的说来,LDAP是一个得到关于人或者资源的集中、静态数据的快速方式。
LDAP是一个用来发布目录信息到许多不同资源的协议。通常它都作为一个集中的地址被使用,不过根据组织者的需要,它可以做得更加强大。
LDAP其实是一个电话簿,类似于我们所使用诸如NIS(Network Information Service)、DNS (Domain Name Service)等网络目录,也类似于你在花园中所看到的树木。
不少LDAP开发人员喜欢把LDAP与关系数据库相比,认为是另一种的存贮方式,然后在读性能上进行比较。实际上,这种对比的基础是错误的。LDAP和关系数据库是两种不同层次的概念,后者是存贮方式(同一层次如网格数据库,
对象数据库),前者是存贮模式和访问协议。LDAP是一个比关系数据库抽象层次更高的存贮概念,与关系数据库的查询语言SQL属同一级别。LDAP最基本
的形式是一个连接数据库的标准方式。该数据库为读查询作了优化。因此它可以很快地得到查询结果,不过在其它方面,例如更新,就慢得多。
特殊的数据库
从另一个意义上 LDAP是实现了指定的数据结构的存贮,它是一种特殊的数据库。但是LDAP和一般的数据库不同,明确这一点是很重要的。 LDAP对查询进行了优化,与写性能相比LDAP的读性能要优秀很多。
就象Sybase、Oracle、Informix或Microsoft的数据库管理系统(DBMS)是用于处理查询和更新关系型数据库那样,LDAP服务器也是用来处理查询和更新LDAP目录的。换句话来说LDAP目录也是一种类型的数据库,但不是关系型数据库。要特别注意的是,LDAP通常作为一个 hierarchical数据库使用,而不是一个关系数据库。因此,它的结构用树来表示比用表格好。正因为这样,就不能用SQL语句了。
21世纪的LDAP技术发展很快。 几乎所有计算机平台上的所有的应用程序都可以从LDAP目录中获取信息。LDAP目录中可以存储各种类型的数据:电子邮件地址、邮件路由信息、人力资源数据、公用密匙、联系人列表,等等。通过把LDAP目录作为系统集成中的一个重要环节,可以简化员工在企业内部查询信息的步骤,甚至连主要的数据源都可以放在任何地方。
服务器
LDAP服务器可以用“推”或“拉”的方法复制部分或全部数据,例如:可以把数据“推”到远程的办公室,以增加数据的安全性。复制技术是内置在LDAP服务器中的而且很容易配置。如果要在DBMS中使用相同的复制功能,数据库厂商就会要你支付额外的费用,而且也很难管理。
配置为需要 LDAP 服务器签名目录
一、使用组策略
服务器的 LDAP 签名要求设置
1、单击开始单击运行类型mmc.exe然后单击确定.
2、上将文件在菜单中,单击添加/删除管理单元.
3、在该添加或删除管理单元对话框框单击组策略管理编辑器单击添加.
4、在该选择组策略对象对话框框单击浏览.
5、在该浏览组策略对象对话框框单击默认域策略在下,域、 ou 和链接的组策略对象区域,然后单击确定.
6、单击完成.
7、单击确定.
8、展开默认域控制器策略展开计算机配置展开策略展开Windows 设置。展开安全设置展开本地策略然后单击安全选项.
9、用鼠标右键单击域控制器: LDAP 服务器签名要求然后单击属性.
10、在该域控制器: LDAP 服务器签名要求属性对话框框启用定义这个策略设置,单击以选中要求签名在该定义这个策略设置下拉列表,然后单击确定.
11、单击是在该确认设置更改对话框。
二、客户端 LDAP 签名要求的设置
1、单击开始单击运行类型mmc.exe然后单击确定.
2、上将文件在菜单中,单击添加/删除管理单元.
3、在该添加或删除管理单元对话框框单击组策略对象编辑器,然后单击添加.
4、单击完成.
5、单击确定.
6、展开本地计算机策略展开计算机配置展开策略展开Windows 设置。展开安全设置展开本地策略然后单击安全选项.
7、用鼠标右键单击网络安全: LDAP 客户端签名要求然后单击属性.
8、在该网络安全: LDAP 客户端签名要求属性对话框框单击以选中要求签名在下拉列表,然后单击确定.
9、单击是在该确认设置更改对话框。