使用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. 夹缝中求生存-在一无所有的php虚拟主机环境下利用smtp发送邮件(二)

    夹缝中求生存 前言:在上一篇随笔中,以163个人邮箱作为发送邮箱地址,当收件邮箱为QQ邮箱时,极有可能会被直接扔进邮件垃圾箱里,为了解决这个问题,申请注册企业邮箱,可以减少发出的邮件被当作垃圾邮件的可 ...

  2. SpringDataJPA入门就这么简单

    一.SpringData入门 在上次学SpringBoot的时候,那时候的教程就已经涉及到了一点SpringData JPA的知识了.当时还是第一次见,觉得也没什么大不了,就是封装了Hibernate ...

  3. ubuntu下cmake 使用clang

    安装llvm.clang sudo apt-get install llvm clang clang命令会在/usr/bin/clang cmake配置交叉编译链 建立linux.toolchain. ...

  4. 云计算---openstack实例共享80、443端口

    前言 因为openstack使用的是apache,所以不能共享80端口,但创建的许多云主机,虽然可以通过rinetd进行跳转,但有时需要直接访问80端口,所以这里我们选择包含了nginx的openre ...

  5. C++实验1

  6. Microsoft AI - Custom Vision in C#

    概述 前面一篇 Microsoft AI - Custom Vision 中,我们介绍了 Azure 认知服务中的自定义影像服务:Custom Vision,也介绍了如果通过这个在线服务,可视化的完成 ...

  7. SSE(Server-sent events)技术在web端消息推送和实时聊天中的使用

    最近在公司闲着没事研究了几天,终于搞定了SSE从理论到实际应用,中间还是有一些坑的. 1.SSE简介 SSE(Server-sent events)翻译过来为:服务器发送事件.是基于http协议,和W ...

  8. Java多线程:队列与阻塞队列

    1. 什么是阻塞队列 阻塞队列(BlockingQueue)是 Java 5 并发新特性中的内容,阻塞队列的接口是 java.util.concurrent.BlockingQueue,它提供了两个附 ...

  9. java集合框架详解

    java集合框架详解 一.Collection和Collections直接的区别 Collection是在java.util包下面的接口,是集合框架层次的父接口.常用的继承该接口的有list和set. ...

  10. 58 同城 iOS 客户端 iOS11 及 iPhone X 适配实践

    一.前言 前段时间 WWDC 大会上苹果推出了 iOS11 系统 和 iPhone X 新机型,相信各个 iOS 团队的开发者都已经在计划新系统和新机型的适配工作了.不得不说,新系统和新机型的发布确实 ...