LOAP& its implimenlation
LDAP 概念
LDAP的英文全称是Lightweight Directory Access Protocol,简称为LDAP,LDAP是轻量目录访问协议,LDAP是轻量目录访问协议。简单的说来,LDAP是一个得到关于人或者资源的集中、静态数据的快速方式。
LDAP的优势
1 .跨平台 2. 费用及维护 ,大多数的LDAP服务器安装起来很简单,也容易维护和优化。3 .复制技术 4 .允许使用ACI
LDAP的基本模型
1.信息模型:描述LDAP的信息表示方式 2.命名模型:描述LDAP中的数据如何组织 3.功能模型:描述LDAP中的数据操作访问 4.安全模型:描述LDAP中的安全机制
LDAP协议的特点
- LDAP是一种目录服务,保存在特殊的数据库中,数据的读取速度远高于写入速度。
- LDAP对查询做了优化,读取速度优于普通关系数据库。
- LDAP不支持事务、不能进行回滚,需要进行这些操作的应用只有选择关系数据库。
- LDAP采用服务器/客户端模式,支持分布式结构。
- LDAP中的条目以树形结构组织和存储。
- LDAP基于Internet协议,直接运行在简单和通用的TCP/IP或其他可靠的传输协议层上,使连接的建立和包的处理简单、快捷,对于互联网和企业网应用都很方便。
- LDAP协议简单,通过使用查找操作实现列表操作和读操作。
- LDAP通过引用机制实现分布式访问,通过客户端API实现分布式操作(对于应用透明),平衡了负载。
- LDAP实现具有低费用、易配置和易管理的特点,并提供了满足应用程序对目录服务所需求的特性。
LADP的使用
统一身份认证主要是改变原有的认证策略,使需要认证的软件都通过LDAP进行认证,在统一身份认证之后,用户的所有信息都存储在AD Server中。终端用户在需要使用公司内部服务的时候,都需要通过AD服务器的认证。
那么程序中是如何访问的呢? 我们以PHP脚本作为例子:
1.Php如何与LDAP连接和关闭
$ds=ldap_connect("ServerName")
ServerName是LDAP的服务器名,
例:
$ds=ldap_connect(“10.31.172.30:1000”)
返回值是:true 或false
关闭连接
ldap_close($ds);
2. 在php中如何搜索用户信息
$ds=ldap_connect("10.31.172.30:1000"); //首先连接上服务器
$justthese =array("cn","userpassword",”location”); //搜索函数中的一个参数,要求返回哪些信息,
//以上传回cn,userpassword,location,这些都要求小写
$sr=ldap_search($ds,"o=jite","cn=dom*",$justthese); //第一个参数开启LDAP的代号,第二个参数最基本的 dn条件值
3. 添加用户
$ds=ldap_connect("10.31.172.30:1000"); //首先连接上服务器
$r=ldap_bind($ds,"cn=domadmin,o=jite","password"); //系住一个管理员,有写的权限,cn=domadmin,o=jite顺序不能变
$info["cn"]="aaa";//必填
$info["userpassword"]="aaa";
$info["location"]="shanghai";
$info["objectclass"] ="person"; //必填person为个人,还有server…
ldap_add($ds,"cn=".$info["cn"].",o=jite", $info);
ldap_unbind($ds); //取消绑定
ldap_close($ds); //关闭连接
4. 删除用户
$ds=ldap_connect("10.31.172.30:1000"); //首先连接上服务器
ldap_bind($ds,"cn=domadmin,o=jite","password"); //绑定管理员,有删除的权限
$dn="cn=dingxf,o=jite";
ldap_delete($ds, $dn); //删除用户
ldap_unbind($ds);//取消绑定
ldap_close($ds);//关闭连接
LOAP& its implimenlation的更多相关文章
- MySql索引总结
索引概念 B+树索引分为聚集索引和非聚集索引(辅助索引),但是两者的数据结构都和B+树一样,区别是存放的内容. 可以说数据库必须有索引,没有索引则检索过程变成了顺序查找,O(n)的时间复杂度几乎是不能 ...
- oracle分区表运行计划
分区表有非常多优点,以大化小,一小化了,加上并行的使用,在loap中能往往能提高几十倍甚至几百倍的效果. 当然表设计得不好也会适得其反.效果比普通表跟糟糕. 为了更好的使用分区表,这里看一下分区表的运 ...
- 第八章 SQL高级处理 8-1 窗口函数
一.什么是窗口函数 窗口函数也称为LOAP函数.OnLine Analytical Processing的简称.意思是对数据库数据进行实时分析处理. 窗口函数就是为实现OLAP而添加的标准SQL功能. ...
- BabyLinux制作过程详解
转:http://www.360doc.com/content/05/0915/14/1429_12641.shtml BabyLinux制作过程详解 作者:GuCuiwen email:win2li ...
- Hive2.2.1概述(待重写)
概述 hive 是一个包裹着 hdfs 的壳子,hive 通过 hql,将 sql 翻译成 MR ,进行数据查询. Hive是⼀个构建在Hadoop之上的数据仓库 hive的数据存在hdfs上,元信息 ...
- Oracle表的种类及定义
1表的类型 1)堆组织表(heap organized tables). 当增加数据时,将使用在段中找到的第一个适合数据大小的空闲空间.当数据从表中删除时,留下的空间允许随后的insert和updat ...
- 时间序列数据库(TSDB)初识与选择
时间序列数据库(TSDB)初识与选择 本文作者由 MageByte 团队的 「借来方向」编写,关注公众号 给你更多硬核技术 背景 这两年互联网行业掀着一股新风,总是听着各种高大上的新名词.大数据.人工 ...
- 时间序列数据库(TSDB)初识与选择(InfluxDB、OpenTSDB、Druid、Elasticsearch对比)
背景 这两年互联网行业掀着一股新风,总是听着各种高大上的新名词.大数据.人工智能.物联网.机器学习.商业智能.智能预警啊等等. 以前的系统,做数据可视化,信息管理,流程控制.现在业务已经不仅仅满足于这 ...
- 自己编写k8s
## 基于Docker和Kubernetes的企业级DevOps实践训练营 ### 课程准备 1. 离线镜像包 百度:https://pan.baidu.com/s/1N1AYGCYftYGn6L0Q ...
随机推荐
- git + git flow 的简单介绍
1.git简单实用 git:是一种分布式版本控制系统,因为其优秀的特性个人十分推崇. 1.1设置本机用户身份 git config -global user.name "userName&q ...
- Django系列:(1)PyCharm下创建并运行我们的第一个Django工程
准备工作: 假设读者已经安装好python 2x或3x,以及安装好Django,以及Pycharm. 我的配置: – Python 2.7.11 – Pycharm Professional 5.0. ...
- 短视频SDK超级简单易用
超级简单易用的短视频SDK来自RDSDK.COM.锐动天地为开发者提供短视频编辑.视频直播.特效.录屏.编解码.视频转换,等多种解决方案,涵盖PC.iOS.Android多平台.以市场为导向,不断打磨 ...
- 网站推广--Html关键词代码解说
html的meta标签 1. meta标签是内嵌在你网页中的特殊html标签,包含着你有关于你网页的一些隐藏信息.Meat标签的作用是向搜索引擎解释你的网页是有关哪方面信息的.对于高级的搜索引擎来说, ...
- swift 与 @objc
Objective-C entry points https://github.com/apple/swift-evolution/blob/master/proposals/0160-objc-in ...
- 第一天 初识Python
Python基础 一 编程语言 什么是编程语言? 上面提及的能够被计算机所识别的表达方式即编程语言,语言是沟通的介质,而编程语言是程序员与计算机沟通的介质.在编程的世界里,计算机更像是人 ...
- VC++线程函数内怎么调用外部函数
VC++线程函数内怎么调用外部函数 1.把外部函数做成静态函数,就可以直接调用了.2.把外部函数所在的对象通过线程函数参数传到线程里面来,这样线程里可以使用此对象及其函数了.
- 面试之Spring
一.IoC IoC(Inversion of Control):控制反转(是把传统上由程序代码直接操控的对象的生成交给了容器来实现, 通过容器来实现对象组件的装配和管理.所谓"控制反转&qu ...
- JavaScript异步编程解决方案探究
javascript的天生单线程特性,使得异步编程对它异常重要,早期的通常做法是用回调函数来解决.但是随着逻辑的复杂,和javascript在服务端的大显神通,使得我们很容易就陷入“回调陷井”的万丈深 ...
- react-native 0.58版本打包图片问题 task ':app:mergeReleaseResources' Error: Duplicate resources
debug没问题,在生成正式apk的时候就如下: google了一下在github上找到了解决方案: github问题指向 在node_modules/react-native/react.gradl ...