使用LDAP(ApacheDS)构建统一认证服务(SSO单点登录)

 
构建团队协作的体系,需要涉及很多个系统,如SVN、Jenkins、Trac、Nexus等,而一般而言每个系统均有其用户体系,当我们新增一个成员的时候,需要在每个系统的用户体系中添加用户;这样的工作往往是比较繁琐而冗余的。
 
通过LDAP这种轻量级目录访问方式共享认证成为一种行业标准,大多数系统均支持LDAP的认证方式。
 
1、LDAP介绍
LDAP的介绍可以通过搜索引擎找到,不赘述。LDAP是一种协议,它不是具体的实现,主要特点:
a、简单;
b、树形结构;
c、有权限控制(ACL);
d、schema来控制数据结构;
e、可以安全访问(STLS或者SSL);
f、有简单的LDAP语法。
 
2、LDAP的应用场景
a、数字证书管理,授权管理,单点登录;
b、分布式系统中的UDDI;
c、网络资源管理,如DNS、Mail服务、用户管理
 
2、LDAP的服务端实现
a、openLDAP,这个比较著名,yum可以直接安装;
b、389 Directory Server,这个是Federa上面自带的企业服务;
c、ApacheDS(http://directory.apache.org),apache上面维护的目录服务,纯Java写的,支持Eclipse插件访问;
d、其他很多服务端实现可以参考(http://www.oschina.net/project/tag/180/ldap)。
 
3、LDAP的客户端
客户端的实现就很多了,比较流行的是PhpLDAPAdmin
LDAP详细介绍:LDAP中文学习手册.doc

 
服务端使用ApacheDS,客户端使用Apache Directory studio的Eclipse插件。
1、笔者是Java程序猿,apache的粉丝;
2、ApacheDS配置简单,十分可控;
3、ApacheDS支持Eclipse插件,可以在编写代码的时候,随时添加成员而无额外的成本;
其实macketplace里面也有的,搜索“Apache Directory Studio” 就可以
 
 

LDAP的用户需求的更多相关文章

  1. APACHE + LDAP 的权限认证配置方法

    原文地址:http://www.chinaunix.net/jh/49/627646.html 一.前言 很多朋友希望利用 Apache 通过 LDAP 进行用户认证及权限管理.     通过多次试验 ...

  2. Centos 7 vsftpd ldap 配置

    #ldap 安裝配置 环境Centos7#安装 yum install -y openldap openldap-clients openldap-servers migrationtools pam ...

  3. ABP源码分析四十六:ABP ZERO中的Ldap模块

    通过AD作为用户认证的数据源.整个管理用户认证逻辑就在LdapAuthenticationSource类中实现. LdapSettingProvider:定义LDAP的setting和提供Defaut ...

  4. [原创]django+ldap+memcache实现单点登录+统一认证

    前言 由于公司内部的系统越来越多,为了方便用户使用,通过django进行了单点登录和统一认证的尝试,目前实现了django项目的单点登录和非django项目的统一认证,中间波折挺多,涉及的技术包括dj ...

  5. [原创]django+ldap实现单点登录(装饰器和缓存)

    前言 参考本系列之前的文章,我们已经搭建了ldap并且可以通过django来操作ldap了,剩下的就是下游系统的接入了,现在的应用场景,我是分了2个层次,第一层次是统一认证,保证各个系统通过ldap来 ...

  6. [原创]django+ldap实现统一认证部分二(python-ldap实践)

    前言 接上篇文章 [原创]django+ldap实现统一认证部分一(django-auth-ldap实践) 继续实现我们的统一认证 python-ldap 我在sso项目的backend/lib/co ...

  7. [原创]django+ldap实现统一认证部分一(django-auth-ldap实践)

    前言 接之前我的文章,django+ldap+memcache实现单点登录+统一认证 ,ldap部署相关,ldap双机\LAM配置管理\ldap备份还原,目前来说,我们已经有了高可用性的ldap环境了 ...

  8. ldap部署相关,ldap双机\LAM配置管理\ldap备份还原

    前言 接之前我的文章,django+ldap+memcache实现单点登录+统一认证 就单点登录实现过程进行详细记录,ldap是一切的基础,可以把它理解成一个读强写弱的文件类型数据库,统一认证我们通过 ...

  9. LDAP注入与防御解析

    [目录] 0x1 LDAP介绍 0x2 LDAP注入攻击及防御 0x3 参考资料 0x1 LDAP介绍 1 LDAP出现的背景 LDAP(Lightweight Directory Access Pr ...

随机推荐

  1. 仿QQ发语音、图片选择、表情选择demo

    一款仿QQ发语音.图片选择.调用拍照.表情选择的demo git地址:https://github.com/PureLovePeter/pic.git.  喜欢的请 star  star star,共 ...

  2. Linux中查看进程树

    pstree -p 查看当前的shell的进程和执行shell脚本的子进程的方法:echo $$

  3. python基础学习二 数据结构之list及相关基本操作

    list是py内置的一种数据类型,list就是列表的意思,list就是一种有序的数据集合,可以随时增加和删除list的元素. 生活中,比如我们要列出全班同学的名字,就可以用list来表示 >&g ...

  4. 【Flask】 WTForm表单编程

    WTForm表单编程 在网页中,为了和用户进行信息交互总是不得不出现一些表单.flask设计了WTForm表单库来使flask可以更加简便地管理操作表单数据.WTForm中最重要的几个概念如下: Fo ...

  5. 数据库MySQL、redis主从切换shell脚本

    具体源码可找我领取

  6. 20161110-awk、sed测试题

    1. 出题了:示例文本如下:aaaaabbbbbcccccdddaaaaabbbbbccccc 希望得到的结果如下:aaaaa|bbbbb|ccccc|dddaaaaa|bbbbb|ccccc 匹配要 ...

  7. web 表单提交按钮的测试点

    web表单中的提交按钮的测试点: 在提交前需要理解清楚的点: 1.表单中哪些字段是必填项 2.表单中字段内容的限制:非空.重复.长度.特殊字符,空格.以及一些和业务相关的约束条件 测试点: 1.是否支 ...

  8. 一个典型的kubernetes工作流程 - kubernetes

    1.准备好一个包含应用程序的Deployment的yml文件,然后通过kubectl客户端工具发送给ApiServer. 2.ApiServer接收到客户端的请求并将资源内容存储到数据库(etcd)中 ...

  9. 第2次作业:Wechat创作史

    Wechat创作史   比尔盖茨曾经说过一句话:21世纪要么电子商务,要么无商可务. 2.1 介绍产品相关信息 -the information about Wechat 你选择的产品是? 选择微信作 ...

  10. 201621123062《java程序设计》第十周作业总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 思维导图: 2. 书面作业 本次PTA作业题集异常 2.1. 常用异常 结合题集题目7-1回答 2.1.1 自己以前 ...