使用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. Unity3D脚本的生命周期(执行顺序)

    Unity脚本中有许多固定的函数 例如Start();Update(); 而这些函数都有固定的执行顺序 搞清楚这些函数的执行顺序 对于我们理清代码的逻辑就显得尤为重要 举个简单的例子 //脚本A pu ...

  2. 小程序首页onLoad为异步,调用app.js中的全局参数的解决方案。

    一,先说一下遇到的问题: 在首页,为了携带app.js中一些参数去做请求动作,但是由于异步原因,发现请求时候,参数信息还未获取到但请求已经发出去. 若等app.js的全局参数返回来,再携带着它去做请求 ...

  3. 使用python UIAutomation从QQ2017(v8.9)群界面获取所有群成员详细资料,

    首先安装pip install uiautomation, 运行本文代码.或者下载https://github.com/yinkaisheng/Python-UIAutomation-for-Wind ...

  4. js 标签云

    以前只看到wordpress上面有个标签云的效果挺6,就好奇的弄个试试,还好网上有很多小伙伴的分享了,借鉴过来了  哈哈 html代码 <!DOCTYPE html> <html&g ...

  5. iOS 用户体验之音频

    早期某知名公司的应用有这么一个问题,如果我在听音乐时打开该应用,播放一段小视频,视频播放完成之后,音乐没有继续播放.这个问题被很多用户吐槽,很久以后,该公司终于修复了这个问题. 无论声音是应用体验的重 ...

  6. WinSock 异步I/O模型-3

    重叠I/O(Overlapped I/O) 在 Winsock 中,重叠 I/O(Overlapped I/O)模型能达到更佳的系统性能,高于之前讲过的三种.重叠模型的基本设计原理便是让应用程序使用一 ...

  7. 学习ASP.NET Core Razor 编程系列三——创建数据表及创建项目基本页面

    一.创建脚本工具并执行初始迁移 在本节中,您将使用包管理控制台(PMC)来更新数据库: •添加VisualStudio Web代码生成包.这个包是运行脚本引擎所必需的. • 执行Add-Migrati ...

  8. Android,资料分享(2015 版)

    Java 学习 我要再次强调,一定要有Java 基础(虽然现在使用其他语言也可以开发Android,但毕竟是很小众),也不要认为学习Java 两三周就可以不用管了,这会在以后的深入学习中暴露出问题,所 ...

  9. sqlite的limit使用

    如果我要取11-20的Account表的数据,则为: Select * From Person  Limit 9 Offset 10;表示从Person  表获取数据,跳过10行,取9行 .也可以这样 ...

  10. java基础笔记(4)----数组

    介绍: 数组是一种数据类型,是引用类型,是一块连续的内存空间,用于存储和管理相同类型的多个数据. 定义:-- > 数组的声明方式 先声明,在开辟内存空间--> int [] a; a=ne ...