动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
电脑书籍下载:程序设计书籍 | 数据库教程书籍 | 平面与多媒体书籍 | 网络通讯书籍 | 系统管理书籍 | 网络安全书籍 | 认证考试书籍
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Oracle教程 ]的信息



本月文章推荐
.优化Oracle停机时间及数据库恢复.
.Oracle数据库全文索引设置步骤简.
.表中出现block错误的恢复方法及具.
.Oracle中用LogMiner分析重做及归.
.使用10203事件跟踪Oracle块清除.
.如何利用QCTO开发可重复使用的测.
.Oracle中屏蔽英文提示信息的两个.
.Oracle数据库文件移动.
.Oracle用户创建、权限分配.
.监控数据库性能的SQL.
.全面讲解归档可用的缓冲大小和数.
.数据库恢复.
.数据库调优:如何优化in操作.
.Oracle数据库异构服务原理及实例.
.如何实现自动友情链接.
.oracle data pump步骤.
.让你学会简单改变数据库sid的方法.
.Statspack使用中存在的几个误区.
.oracle9.2.0.1升级到9.2.0.6.
.PL/SQL 快速建立DB_LINK.

Linux下的LDAP

发表日期:2008-2-9 |



  作者简介:
  Atif Ghaffar 就像只变色龙。他经常变换角色,从系统治理员到程序员,再到教师、项目治理员,直至任何可以完成工作的角色。有时候,当他在电影院看电影的同时,他也喜欢拿出笔记本电脑编写程序。Atif始终坚信,他是属于Linux和开放源码社团的。 关于Atif的更多信息,可以访问他的主页http://www.developer.ch/~aghaffar。
  
  摘要:
  本文将讨论LDAP以及在我们所喜爱的操作系统——linux上实现LDAP。
  已经有很多关于LDAP的文献,所以我不想在这里再重复什么,我不预备讨论高级的LDAP概念、计划以及第二版和第三版LDAP的区别等等。事实上,我对这类问题也所知不多。相反地,我将尝试用简单明了的语言解释什么是LDAP, 它能给我们带来的好处以及我们如何使用它。
  我不是一个LDAP专家。我只是一个LDAP的初学者。本文介绍的是我用LDAP做了些什么以及如何做。我不会使你再像以前的我一样感到迷惑。
  问题:既然你是个LDAP初学者,为什么还要写一篇关于LDAP的文章?
  最近我在一个项目上需要一位同事的帮助。 这个项目的基础就是LDAP。 我的同事可以在perl、邮件服务器等等方面帮助我,但是他对LDAP一无所知,事实是每一次他想要深入学习LDAP, 反而会对LDAP越来越迷惑。 因为该项目的基础是LDAP, 所以我给了这位同事半小时来学习LDAP,结果是一切反而变得清楚明了了。 原因很简单, LDAP是在前端的, 只需要集中一点点注重力或者一些生动的例子就可以了。
  在本文中我也正想这样做。
  你可以在文中发现好多对学习LDAP有用的url。
  
  LDAP是什么?
  LDAP是轻量目录访问协议(Lightweight Directory Access Protocol)的缩写,其实是一种目录服务,类似于我们在文件系统中所使用的目录,类似于我们查询电话号码使用的电话号码簿,类似于我们所使用诸如NIS(Network Information Service)、DNS (Domain Name Service)等网络目录,也类似于你在花园中所看到的树木。
  LDAP是一种非凡的数据库。但是LDAP和一般的数据库不同,明白这一点是很重要的。 LDAP对查询进行了优化,与写性能相比LDAP的读性能要优秀很多。
  
  一般地,目录服务提供什么样的服务呢?
  通常是根据查询的标准返回一定的信息。
  
  实例
  文件系统目录
  ls /etc
  返回/etc目录下所有的文件和子目录。
  
  ls /etc/p*
  返回/etc下所有以p开头的文件和子目录。
  
  find /usr/local/apache -name index.Html
  这将在"/usr/local/apache"目录下搜索名为index.html的文件/子目录。
  
  NIS目录
  ypcat passwd
  这将从NIS数据库返回用户名、密码、用户id等信息。
  
  ypmatch atif passwd
  返回用户atif的密码。
  
  DNS目录
  nslookup www.linuxfocus.org
  返回www.linuxfocus.org的ip地址。
  
  nslookup -type MX linuxfocus.org
  返回主机名符合linuxfocus.org的MX记录信息。
  
  LDAP目录
  (我们将在下面具体阐述)
  ldapsearch uid=aghaffar
  返回关于用户aghaffar的所有公开信息。
  这和find / -uid aghaffar unix命令很类似。
  
  ldapsearch uid=aghaffar mail
  返回用户ughaffar的邮件信息
  
  目录基础或根
  在上面我们所提到的任何一种目录服务中都有一个我们开始浏览或搜索的开始点。
这个开始点就是通常所谓的根。 这和一棵数的根也很类似。每棵都有一个根,以及很多的树枝树叶。
  * 文件系统的根是 /
  * NIS 的根是域名,比如 "linuxfocus.org"
  * DNS 根是Internic(译者注:Internet网络信息中心, Internet的治理组织)
  * LDAP同样有一个可定义的根,比如 "o=linuxfocus.org" ,这里o表示组织
  每个根都可以衍生出好多枝叶(正如同你邻居的花园中的树木一样), 对于文件系统来说,它的枝叶就是一个个文件及子目录。每一个枝叶都有一些属性。比如文件系统的枝叶(文件及子目录)有以下的属性:
  * 名称
  * 修改时间
  * 所有者
  * 组(译者注:所有者所在的组)
  * 等等
  下图显示了一个文件系统目录。
  属性由unix命令ls -ld /usr得到。
  
  下面是一个LDAP目录的图示:
  
  我们将在下面讨论这张图。
  
  区分名(DN,Distinguished Name)
  和自然界中的树不同,文件系统/LDAP/电话号码簿目录的每一片枝叶都至少有一个独一无二的属性,这一属性可以帮助我们来区别这些枝叶。
  在文件系统中, 这些独一无二的属性就是带有完整路径的文件名。比如/etc/passwd,该文件名在该路径下是独一无二的。当然我们可以有/usr/passwd, /opt/passwd,但是根据它们的完整路径,它们仍然是唯一的。
  类似于DNS系统的FQDN正式域名,FQDN也是唯一的。
  在LDAP中,一个条目的区分名称叫做“dn”或者叫做区分名。在一个目录中这个名称总是唯一的。比如,我的dn是"uid=aghaffar, ou=People, o=developer.ch"。不可能有相同的dn,但是我们可以有诸如"uid=aghaffar, ou=Administrators, o=developer.ch"的dn。这同上面文件系统中/etc/passwd 和 /usr/passwd的例子很类似。
  我们有独一无二的属性,在"ou=Administrators, o=developer.ch" 中uid和在"ou=People, o=developer.ch"中的uid。这并不矛盾。
  
  LDAP服务器
  现在市场上有很多LDAP服务器,大多数都可以在linux上运行。本文将介绍openLDAP的使用。
  我为什么选择openLDAP? 为什么你应该选择openLDAP?
  * openLDAP是开放源码的
  openLDAP的官方网站是http://www.openldap.org。你可以下载其源代码包自己编译,或者看看你的linux发行版是否已经包含了该软件包。假如已经包含了就可以安装预先编译好的版本从而少花费些力气。
  我已经成功地在SuSE6.x 和 RedHat6.x上测试过openLDAP。
  构建LDAP目录
  下面我们将介绍设置一个LDAP服务器的步骤。
  步骤:
  * 下载并安装openLDAP
  * 配置 LDAP server
  * 配置本地环境指向LDAP 安装
  * 初始化LDAP 数据库
  * 查询 LDAP
  * 添加/修改 LDAP 条目
  下载并安装openLDAP
  正如前面所提到的,可以从www.openldap.com下载源代码包并根据它的相关文档进行安装,或者安装预先编译好的包(包的安装或如何编译应用程序已经超出了本文讨论的范畴)。
  配置LDAP服务器
  在我们的例子中,我将为linuxfocus.org构建LDAP服务器。你可以用你喜欢的编辑器编辑slapd.conf和ldap.comf配置文件来更改名称等参数以适应你的具体需求。
  在我的服务器上配置文件在/etc/openldap目录下,你的配置文件可能在/usr/local/etc/openldap或者别的地方,这要根据你的linux发行版本或者编译openldap的具体情况而定。
  ######### /etc/openldap/slapd.conf ###################################
  # 下面的部分是我的suse 6.4 linux 发行版本预先定义的
  # 我们设置的部分在本文的第二和第三部分
  include /etc/openldap/slapd.at.conf
  include /etc/openldap/slapd.oc.conf
  schemacheck off
  
  pidfile /var/run/slapd.pid
  argsfile /var/run/slapd.args
  
  #######################################################################
  # ldbm database definitions
  #######################################################################
  
  # 定义使用的数据库类型。 缺省是ldbm
  database ldbm
  
  # 后缀或者根. 这是你LDAP目录的顶节点
  suffix "o=linuxfocus.org"
  
  # LDAP的dbs 保存的位置
  directory /var/lib/ldap
  
  # 目录治理员的区分名
  rootdn "cn=Manager, o=linuxfocus.org"
  
  # 保存ldap目录治理员的明文密码是很糟糕的,但是我们将在刚刚开始使用ldap时这样做
  rootpw secret
  
  # 这就是所有的一切
  
  编辑你的 /etc/openldap/ldap.conf配置文件
  该文件位于ldap客户端(我们将使用同一计算机作为服务器和客户端,当然这可以在同一计算机或不同的计算机上)
  通常诸如ldapdelete 、ldapadd等等的ldap客户端会读该文件的内容。

  
  ##########/etc/openldap/ldap.conf#########
  # LDAP 的缺省设置
  #
  # 查看 ldap.conf(5) 可以获取更多的信息
  # 本文件应该设置为对所有人可读
  
  # 定义ldap服务器,可以用主机名或ip地址
  host 127.0.0.1
  
  # 定义我们要查询的目录的根
  # 我们将要使用的顶节点,这不一定是目录的根,比如我们可以使用
  # base = ou=users, o=linuxfocus.ch
  # 这时我们的一切查询都将从树根o=linuxfocus.org的分支开始
  
  现在启动ldap服务器。
  假如你使用SuSE预先编译好的openldap服务器,你可以通过下面的命令启动ldap服务
  /etc/rc.d/ldap start
  在RedHat,该命令为
  /etc/rc.d/init.d/ldap start
  假如你是使用缺省设置自己编译并安装的,你可以用/usr/local/libexec/slapd &启动ldap服务器。假如没有使用缺省设置,请找到slapd文件并运行它。
  
  在新安装的LDAP服务器上添加数据
  到现在
上一篇:在ORACLE中利用角色增强应用系统安全性 人气:513
下一篇:用JDBC访问一个数据库 人气:744
浏览全部Oracle教程的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-7-24 Sablog-X v2.0 预览版
2008-7-24 帝国备份王EmpireBak 2008 正式版
2008-7-24 网趣网上购物系统时尚版 v8.2
2008-7-24 纵横B2B电子商务系统XYECS!B2B v
2008-7-24 e路小说小偷 v1.2.0723
2008-7-24 凌风美女图片站程序 v2.2
2008-7-24 TOM15电影收索程序
2008-7-24 清风信息自动采集生成系统 v1.0
2008-7-24 QQ邮箱编辑器 v1.0 (小小菜刀ASP
2008-7-19 UltraEdit 简体中文增强版 14.10
2008-7-19 CentOS 5.2 i386 LiveCD
2008-7-19 Snapture多功能相机 v1.4
2008-7-19 iAcces中文输入法 v1.0Build016
2008-7-19 Cookbook烹饪秘籍 v2.5
2008-7-19 苹果专用DVD转换工具 v1.1.59汉化
2008-7-19 Modem修复软件ZiPhone修改版04.0
2008-7-19 AgileMessenger即时通讯工具美化
2008-7-19 Sketches画图软件 v0.7b6破解版


  发表评论
姓 名: 验证码:
内 容:
[ 汉字翻译拼音 ] [ 广告代码 ] [ 符号对照表 ] [ 进制转换 ] [ 经典小工具 ] [ 个税计算 ] [ 汉字简繁转换 ] [ 普通单位换算 ] [ 公制单位换算 ]
[ 生辰老黄历 ] [ 国内电话区号 ] [ 国家代码与域名缩写 ] [ 文字加密解密 ] [ 健康查询 ] [ 万年历 ] [ 手机号码查询 ] [ ip搜索 ] [ Google PR查询 ]
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵