net-ldap for ruby openNebula ldap
preface:ldap 主要概念及术语
OpenNebula issues:
missing step to use LDAP as default driver
cp -r /var/lib/one/remotes/auth/ldap /var/lib/one/remotes/auth/default
Standalone LDAP Daemon, slapd(standalone lightweight access protocol)
Lightweight Directory Access Protocol
LDAP目录中信息 按树型结构组织
具体信息存储在条目(entry)的数据结构中;
条目相当于关系型数据库中的table recored
条目具有区别名DN(distinguished name)的属性(attribute)
DN条目的区别名是用来引用条目entry
dn (distinguished name)
dn相当于关系型数据库中的关键字primary key
entry 类似于关系型数据库表的一条记录
dn(distinguished name) 用来引用entry 相当于关系型数据库的关键字primary key
dn attributed 由类型(type) 和 一个或多个values组成,相当于关系型数据库中的字段(field)名和数据类型
retrieve
LDAP中的type可以有多个value 而不是关系型数据库中为降低数据的冗余性要求实现的各个域必须是不相关的
LDAP entry组织一般按地理位置和组织关系进行组织,很直观
LDAP把数据存放在文本文件中,为了提高效率可以使用基于索引的文件数据库而不是关系型数据库
LDAP信息 以 树形结构存储
在树根一般定义国家country(c=CN)或域名(dc=com)domainName
在其下往往定义一个或多个组织(organization)(o=Acme)
组织(organization) 组织单元(organization unit)
一个组织单元可能包含诸如所有雇员.....
LDAP支持对条目能够和必须支持哪些属性进行控制,这是有一个特殊的称为对象类别(ObjectClass)的属性来实现
属性的值决定了该条目能够及至少应该包含哪些属性
inetorgPerson对象类需要支持sn(surname)和cn(common name)属性
ldap root一般定义国家 域名
o --> organization (组织,公司)
ou --> organization unit(组织单元,部门)
c --> countryName(国家)
dc --> domainComponent(域名)
sn --> suer name(真实名称)
cn --> common name (常用名称)
ldap 以树形结构组织信息
信息存储在条目中entry (可以看他是关系型数据库中的table)
entry 有个dn(distinguished name)区别名(类似关系型数据库中的 记录)
dn 有属性type及value
dn(distinguished name):o=organization,c= (country)
RDN(relative distinguished name)
dn:ou(organization unit公司-部门)=manager,o(organization 公司)=,c=country(国家)
分层hierarchy结构structure
acme
manager organization unit
employees organization
某个国家的某公司的管理组织和雇员组织dn组成
dn:cn(common name)=ruiy,ou(organization unit)=managers,o(organization)=公司名称,c(country)=国家
设计定义ldap 目录结构
导入目录信息数据
ldap的目录信息数据一般存储在ldif(lightwight directory info)文件中
ldif(ldap data interchange format)
添加任何组织单元(organization unit)以前,dn(distinguished name)
dn(distinguished name条目,ldap的一条信息记录 entry recored):o(organization(comparyName)=),c(countryName)
objectClass:organization
ldap 使用rsyslog 记录日志
/etc/openldap/slapd.conf
添加语句
loglevel 259
/etc/rsyslog.conf
添加语句
local4.* /var/log/ldap.log
1,ldap服务器搭建
2,ldap服务器及本年使用
报错解决
原因dn中无ldif中定义的OU(Organization unit类似于一个公司名称)
解决方案添加ou
list all ldap dn object
添加ou语句
3,net-ldap add for openldap extend auth Module ldap addon插件安装(位于你的One服务器上,安装这个插件 ldapbind)
4,ldap authentication for openNebula集成配置
5,openldap常用操作语句
ldapadd -x -D cn=admin,dc=ldap,dc=zzbank,dc=cc -W -f ce.ldif (添加用户及组)
ldapsearch -x -LLL -H ldap:/// -b dc=ruige,dc=zzbank,dc=cc (搜索 all object)
ldapdelete -x -W -D 'cn=admin,dc=ruige,dc=zzbank,dc=cc' "uid=ruiy,ou=people,dc=ruige,dc=zzbank,dc=cc"(删除用户及组)
Tel,
net-ldap for ruby openNebula ldap的更多相关文章
- ldap for ruby
Net::LDAP for Ruby (also called net-ldap) implements client access for the Lightweight Directory Acc ...
- ldap部署相关,ldap双机\LAM配置管理\ldap备份还原
前言 接之前我的文章,django+ldap+memcache实现单点登录+统一认证 就单点登录实现过程进行详细记录,ldap是一切的基础,可以把它理解成一个读强写弱的文件类型数据库,统一认证我们通过 ...
- 使用ldap客户端创建zimbra ldap用户的格式
cat << EOF | ldapadd -x -W -H ldap://:389 -D "uid=zimbra,cn=admins,cn=zimbra" dn: ui ...
- Windows LDAP加固之替换LDAP加密证书
之前两篇文章介绍了LDAP的安全加固,其中提到了TLS加密LDAP通信.对于通常的网页加密,RDP加密都可以在对应的管理界面中选择使用哪个证书来加密.那么对于LDAP服务,怎么确定当前使用的是哪张证书 ...
- [ldap]slapcat/ldapsearch与ldap备份
http://serverfault.com/questions/577356/ldap-backup-with-slapcat-vs-ldapsearch Used: openldap-server ...
- opennebula auth module ldap
1,安装net-ldap addon ruby library for openldap
- Centos 7 vsftpd ldap 配置
#ldap 安裝配置 环境Centos7#安装 yum install -y openldap openldap-clients openldap-servers migrationtools pam ...
- [原创]django+ldap+memcache实现单点登录+统一认证
前言 由于公司内部的系统越来越多,为了方便用户使用,通过django进行了单点登录和统一认证的尝试,目前实现了django项目的单点登录和非django项目的统一认证,中间波折挺多,涉及的技术包括dj ...
- [原创]django+ldap实现统一认证部分一(django-auth-ldap实践)
前言 接之前我的文章,django+ldap+memcache实现单点登录+统一认证 ,ldap部署相关,ldap双机\LAM配置管理\ldap备份还原,目前来说,我们已经有了高可用性的ldap环境了 ...
随机推荐
- Javascript 运动中Offset的bug——逐行分析代码,让你轻松了解运动的原理
我们先来看看这个bug 是怎么产生的. <style type="text/css"> #div1 { width: 200px; height: 200px; bac ...
- python----脚本文件的头部写法。
#!/usr/bin/python #这里主要是为了指明python脚本解释器的路径. #!coding:utf-8#这个是为了告知python脚本文件解释器,此脚本的字符集. import sys ...
- jQuery学习-事件之绑定事件(一)
我们都知道jQuery的事件其思想来源于Dean Edwards的addEvent,通过源码我们知道jQuery在为元素绑定事件时,每种类型的事件(click,blur)时只绑定了一次对应类型的事件处 ...
- Dll注入的几个注意事项
1. 使用钩子SetWindowHookEx注入时,设置钩子的代码必须和钩子回调函数在注入DLL中,并且调用CallNextHookEx时第一个参数必须为钩子的句柄,否则只有一个进程响应钩子. 2.关 ...
- zookeeper 手动T掉已挂节点
zjtest7-redis:/root/zk# cat test_zk.pl use ZooKeeper; use AnyEvent; use AE; use Data::Dumper; use IO ...
- matlab 矩阵
假设矩阵A=[1 3;4 2] 1.对角置零: A-diag(diag(A)) 2.求A的特征值以及特征向量: 用到eig(A)函数,此函数有五种用法,如下: 2.1 E=eig(A):求矩阵A的全部 ...
- Spring、整合Spring+JDBC
首先引入Spring包和JDBC所使用到的包: 配置beans.xml步骤: 1.配置dataSource的属性 2.将DataSource交给DataSourceTransactionManager ...
- AndroidUI 布局动画-布局内容改变动画
实现一个点击菜单动画添加按钮,点击按钮移除当前按钮的动画效果: <LinearLayout xmlns:android="http://schemas.android.com/apk/ ...
- scp的使用
scp有两种版本 一种是ma的 直接使用scp命令 一种是winscp类似ftp mac版的scp命令格式如下: scp ./xxx.tar.gz root@ip: /root/xxx 这句话的意思是 ...
- poj 1118 Lining Up(水题)
再思考一下好的方法,水过,数据太弱! 本来不想传的! #include <iostream> using namespace std; #define MAX 702 /*284K 422 ...