磨砺技术珠矶,践行数据之道,追求卓越价值 
回到上一级页面: PostgreSQL杂记页     回到顶级页面:PostgreSQL索引页 
[作者 高健@博客园  luckyjackgao@gmail.com]

LDAP服务器的安装,参考此处:

http://www-06.ibm.com/jp/linux/tech/doc/attachments/openldap_install_v1.3.pdf#search='OpenLDAP'

而PostgreSQL中与LDAP相关的设置,可以参考:

https://secure.sqlmanager.net/en/articles/postgresql/654

在LDAP服务器端,建立一个用户user4,具体细节参考上述URL中的新用户登录一节,

建立用户user4时,使用的文件:

dn: uid=user4,ou=People,o=System Support,dc=my-domain,dc=com
uid: user4
cn: user4
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
userPassword:
loginShell: /bin/bash
uidNumber:
gidNumber:
homeDirectory: /home/user4

还得使用slappasswd命令,个user4用户设置口令,然后把得到的加密口令拷贝到userPassword处。

然后使用ldapadd命令:

ldapadd -x -f useradd-list.ldif -D "cn=Manager,dc=my-domain,dc=com" -W

然后再查询看看:

[root@srv openldap]#  ldapsearch -x -b "ou=People,o=System Support,dc=my-domain,dc=com"
# extended LDIF
#
# LDAPv3
# base <ou=People,o=System Support,dc=my-domain,dc=com> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
# # People, System Support, my-domain.com
dn: ou=People,o=System Support,dc=my-domain,dc=com
objectClass: organizationalUnit
ou: People # user4, People, System Support, my-domain.com
dn: uid=user4,ou=People,o=System Support,dc=my-domain,dc=com
uid: user4
cn: user4
objectClass: account
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
loginShell: /bin/bash
uidNumber:
gidNumber:
homeDirectory: /home/user4
userPassword:: e2NyeXB0fSQxJC9kbjVRL2dPJHNkamdMZm1iRngxRnVFSXczNk9xeTE=
shadowLastChange: # search result
search:
result: Success # numResponses:
# numEntries:
[root@srv openldap]#

LDAP服务器端准备完毕后,在postgresql中,还要建立同名的用户user4:

postgres>create user user4 password '!qaz2wsx';

至于口令是否和前述的相同并不重要。

为了登录后有数据库供user4使用,还需要创建数据库:

postgres>create database user4 owner user4;

然后,在postgresql所在机器上,进行ldap相关设置:

为了更加简化此问题,暂时不采用pam相关的认证方式,而是只采用单纯的LDAP方式。

根据刚才的LDAP服务器上的查询,给postgresql中的pg_hba.conf文件进行配置:

-bash-3.2$ pwd
/opt/PostgreSQL/9.2
-bash-3.2$ cat ./data/pg_hba.conf
# PostgreSQL Client Authentication Configuration File
... # TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix domain socket connections only
local all user4 ldap ldapserver=16.157.247.8 ldapprefix="uid=" ldapsuffix=",ou=People,o=System Support,dc=my-domain,dc=com"
#local all all md5
# IPv4 local connections:
#host all user4 pam postgresql
host all all 127.0.0.1/ md5
# IPv6 local connections:
host all all ::/ md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local replication postgres md5
#host replication postgres 127.0.0.1/ md5
#host replication postgres ::/ md5
-bash-3.2$

然后,验证登录过程:

-bash-3.2$ ./bin/psql -Uuser4
Password for user user4:
psql.bin (9.2.)
Type "help" for help. No entry for terminal type "xterm";
using dumb terminal settings.
user4=>

此时LDAP服务器的log中有如下信息:

Sep  :: srv slapd[]: conn= fd= ACCEPT from IP=16.157.245.74: (IP=0.0.0.0:)
Sep :: srv slapd[]: conn= op= BIND dn="uid=user4,ou=People,o=System Support,dc=my-domain,dc=com" method=
Sep :: srv slapd[]: conn= op= BIND dn="uid=user4,ou=People,o=System Support,dc=my-domain,dc=com" mech=SIMPLE ssf=
Sep :: srv slapd[]: conn= op= RESULT tag= err= text=
Sep :: srv slapd[]: conn= op= UNBIND
Sep :: srv slapd[]: conn= fd= closed

登录成功

[作者 高健@博客园  luckyjackgao@gmail.com]
回到上一级页面:PostgreSQL基础知识与基本操作索引页    回到顶级页面:PostgreSQL索引页磨砺技术珠矶,践行数据之道,追求卓越价值

PostgreSQL 使用 LDAP 认证方式的更多相关文章

  1. No.2 CAS之SPNEGO+LDAP认证配置

    1.概述 本文先配置了SPNEGO认证,就是如果用户操作系统如果登陆了公司的Windows域,用户浏览器访问应用服务即可免登录. 然后如果不在域里的员工,用LDAP认证方式,输账号密码登陆. 参考文档 ...

  2. Zabbix探索:LDAP的认证方式

    这两天部署了Zabbix测试环境,终于用Puppet部署完成了.总是存在一些小问题,如服务不起动啦之类的. LDAP验证方式配置 刚刚配置Zabbix的用户管理,使用LDAP方式认证. 比较惊喜的是L ...

  3. 搭建harbor仓库、LDAP认证

    ldap: 192.168.199.177 c5game.com 宿主机:192.168.199.224 测试客户机:192.168.199.223 安装docker.docker-compose 访 ...

  4. 从pg_hba.conf文件谈谈postgresql的连接认证

    最近一直在弄postgresql的东西,搭建postgresql数据库集群环境什么的.操作数据库少不得要从远程主机访问数据库环境,例如数据库管理员的远程管理数据库,远程的客户存取数据库文件. 而在po ...

  5. 单点登录(二)----实战------简单搭建CAS---测试认证方式搭建CAS

    我们在上一篇文章中已经介绍了cas以及它的工作流程. 单点登录(一)-----理论-----单点登录SSO的介绍和CAS+选型 本章我们开始动手搭建一个完整的cas服务实现2个web之间的单点登录. ...

  6. centos下svn的ldap认证配置

    前提:完成svn的基本安装 一.安装sasl相关组件 #yum install -y cyrus-sasl cyrus-sasl-lib cyrus-sasl-plain 二.查看SASL版本和提供的 ...

  7. 禅道开源版 Ldap认证插件开发

    禅道开源版-Ldap插件开发 背景 由于开源版无法使用ldap认证,所以在此分享一下自己开发禅道的ldap开发过程,希望对你有所帮助. 简单说一下这个插件的功能: 1.跳过原有禅道认证,使用ldap认 ...

  8. ZeroMQ接口函数之 :zmq_curve – 安全的认证方式和保密方式

    ZeroMQ 官方地址 :http://api.zeromq.org/4-0:zmq_curve zmq_curve(7) ØMQ Manual - ØMQ/4.1.0 Name zmq_curve  ...

  9. oracle 认证方式

    Oracle登录的时候有两种认证方式,一种是“操作系统认证”,一种是“口令文件认证”.1.当采取操作系统认证的时候,在本地用任何用户都可以以sysdba登陆:(默认方式)2.当采取口令文件认证的时候, ...

随机推荐

  1. yarn-site.xml

    要保证spark on yarn的稳定性,避免报错,就必须保证正确的配置,尤其是yarn-site.xml. 首先来理解一下yarn-site.xml各个参数的意义(引自董的博客) 注:下面<v ...

  2. PostgreSQL 连接的问题

    一.在postgresql的安装文件夹\8.3\data\pg_hba.conf里面(或者在开始菜单程序下面的postgresql的配置文档)找到“# IPv4 local connections:” ...

  3. Pygame播放声音与音效

    简单学习自小甲鱼视频教学(笔记) 实现功能: 运行后自动播放背景音乐,单击左键播放音效①,单击右键播放音效②, 空格键控制暂停背景音乐与恢复背景音乐,并且实现播放图标的切换. 代码如下: import ...

  4. iOS绘图事务的运行验证

    结合WWDC,以我们的call stack为例,来说明这四个过程分别大概都做了什么. layout过程 从上面layout的过程可以看出,其所做的主要任务就是将图层调用代理(也就是视图)实现整个视图层 ...

  5. Cloudera Manager大数据集群环境搭建

    笔者安装CDH集群是参照官方文档:https://www.cloudera.com/documentation/enterprise/latest/topics/cm_ig_install_path_ ...

  6. Dubbo特性

    dubbo.properties Dubbo 将自动加载 classpath 根目录下的dubbo.properties,可以通过JVM启动参数 -Ddubbo.properties.file=xxx ...

  7. 【noip模拟赛 王强的疑惑】 题解

    考试题. 是个DP. 50分可以通过子集枚举+线段覆盖(贪心)完成. 考试没时间写了一个子集枚举30分. #include <cstdio> #include <cstring> ...

  8. 用 S5PV210 学习 Linux (二) 刷机(二)

    1.在 Ubuntu 下 ,进入  dnw-linux-master\src\driver 文件下,make 截图 如下: 2.紧接着 加载该模块到内核(注意:需要root权限),sudo insmo ...

  9. Failed to read artifact descriptor for org.apache.maven.plugins:maven-jar-plugin

    在更新maven项目的时候出现许多jar包找不到的问题,但是在本地仓库中查找的时候包含这些jar包. 解决办法: 把所有报错缺少的jar包所在的文件夹删掉,重新更新maven项目,重新下载完成后错误解 ...

  10. Java中的集合和常用类

    Java中的常用类: ▪ Object类 ▪ Math类 ▪ String类和StringBuffer类(字符串) ▪ 8种基本类型所对应的包装类 ▪ java.util包中的类——Date类 Obj ...