磨砺技术珠矶,践行数据之道,追求卓越价值 
回到上一级页面: 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. Linux的CPU相关知识

    超线程和多线程的区别? 超线程从硬件层面理解,即一个CPU的部件(可以理解为核)同时执行多条指令,表现就是同时执行多个线程.多线程是软件层面的概念,比如CPU只有一个核,通过线程调度可以在一个时间段内 ...

  2. Tableau10.4中智能显示点击后消失的解决方案

    如果你的电脑是Win10,并且是高分屏,可能会出现和我一样的问题,就点击智能显示后,发现找不到了. 那么解决方案就是: 这样就能找到智能显示了.

  3. 1878. [SDOI2009]HH的项链【线段树 或 莫队】

    Description HH有一串由各种漂亮的贝壳组成的项链.HH相信不同的贝壳会带来好运,所以每次散步 完后,他都会随意取出一 段贝壳,思考它们所表达的含义.HH不断地收集新的贝壳,因此他的项链变得 ...

  4. Kali-linux查看打开的端口

    对一个大范围的网络或活跃的主机进行渗透测试,必须要了解这些主机上所打开的端口号.在Kali Linux中默认提供了Nmap和Zenmap两个扫描端口工具.为了访问目标系统中打开的TCP和UDP端口,本 ...

  5. Java50道经典习题-程序33 杨辉三角

    题目:打印出杨辉三角形(要求打印出10行如下图)分析:          1         1 1        1 2 1      1 3 3 1    1 4 6 4 11 5 10 10 5 ...

  6. oracle基础知识过一遍(原创)

    用户.角色.权限.表空间 create tablespace test1_tablespace datafile ‘test1file.dbf’ size 10m; create temporary  ...

  7. 『ACM C++』 PTA 天梯赛练习集L1 | 027-028

    死亡周二,今天去看惊奇队长了!!!真的很佩服国外的后期特效大片技术,要是我们国内也能实现这样的技术能力就好了~ 羡慕max -------------------------------------- ...

  8. BZOJ 4520: [Cqoi2016]K远点对(k-d tree)

    Time Limit: 30 Sec  Memory Limit: 512 MBSubmit: 1162  Solved: 618[Submit][Status][Discuss] Descripti ...

  9. CentOS6安装各种大数据软件 第六章:HBase分布式集群的配置

    相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...

  10. 什么是设计模式?【php】

    原文地址:https://www.cnblogs.com/zhuiluoyu/p/5818974.html 什么是设计模式? 设计模式(Design Pattern)是一套被反复使用.多数人知晓的.经 ...