use Windows AD (Active Directory) manage PostgreSQL auth

本文涉及的产品
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
简介:
之前写过关于使用LDAP来认证PostgreSQL用户的文章, 有兴趣的朋友可以参考 : 
但是以前没有测试过windows AD是否可用.
其实方法和LDAP一样, 
首先我们要测试一下在linux下, 使用ldapsearch是否可以正常访问WINDOWS AD 服务.
例如 : 
# ldapsearch -H ldap://xxx.xxx.1.133:389  -x
# extended LDIF
#
# LDAPv3
# base <> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#

# search result
search: 2
result: 1 Operations error
text: 000004DC: LdapErr: DSID-0C0906E8, comment: In order to perform this ope
 ration a successful bind must be completed on the connection., data 0, v1db1

# numResponses: 1

检查使用域账号bind 是否正常 : 
# ldapsearch -H ldap://xxx.xxx.1.133:389  -x  -D "cn=德哥,ou=digoal,ou=SKYMOBI,dc=sky-mobi,dc=com" -W 
输入密码后可以正常返回.
Enter LDAP Password: 
# extended LDIF
#
# LDAPv3
# base <> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#

# search result
search: 2
result: 10 Referral
text: 0000202B: RefErr: DSID-031007EF, data 0, 1 access points
        ref 1: 'examp
 le.com'

ref: ldap://example.com/dc=example,dc=com

# numResponses: 1

接下来就可以配置postgresql的域认证了.
首先要在域中创建账号, 并获取账号的Distinguished Name 即binddn.
例如 : 

cn=德哥,ou=digoal,ou=SKYMOBI,dc=sky-mobi,dc=com

在数据库中创建对应的用户.
$ psql postgres postgres
# create role "德哥" login;

配置pg_hba.conf, 使用如下条目 : 
host all all 0.0.0.0/0 ldap ldapserver=xxx.xxx.1.133 ldapport=389 ldapprefix="cn=" ldapsuffix=",ou=digoal,ou=SKYMOBI,dc=sky-mobi,dc=com"


测试 : 
psql -h 172.16.3.150 -p 1921 -U 德哥
Password for user 德哥: 如果密码错误则
psql: FATAL:  LDAP authentication failed for user "德哥"
密码正确可以登录
Password for user 德哥: 
psql (9.3.5)
Type "help" for help.

postgres=> \q

[参考]
相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
8月前
|
存储 关系型数据库 数据库
Windows安装Postgresql之解压版
Windows安装Postgresql之解压版
299 0
|
9月前
|
关系型数据库 数据安全/隐私保护 PostgreSQL
Windows环境下安装PostgreSQL
Windows环境下安装PostgreSQL
229 0
|
6月前
|
关系型数据库 数据库 PostgreSQL
使用 Docker 在 Windows、Mac 和 Linux 系统轻松部署 PostgreSQL 数据库
使用 Docker 在 Windows、Mac 和 Linux 系统轻松部署 PostgreSQL 数据库
184 1
|
7月前
|
数据可视化 关系型数据库 数据库
Windows安装PostgreSQL失败:There has been an error
Windows安装PostgreSQL失败:There has been an error
410 0
|
8月前
|
关系型数据库 网络安全 数据库
Windows中Postgresql之远程访问
Windows中Postgresql之远程访问
344 0
|
8月前
|
关系型数据库 数据库 数据安全/隐私保护
Windows安装Postgresql之安装版
Windows安装Postgresql之安装版
132 0
Windows安装Postgresql之安装版
|
9月前
|
SQL 关系型数据库 数据库
|
关系型数据库 数据库 数据安全/隐私保护
postgresql windows下修改帐号密码 (图文)
重新设置postgres用户的密码方法: 1、关闭数据库服务 2、进入数据库的工作空间目录 (如果是建库是没有另外指定,应该就是postgresql安装目录下的 data 目录) 3、编辑修改文件 pg_hba.conf, 把连接权限设置的 md5 加密方式 改成 trust,两个IPV4都要修改
1383 0
postgresql windows下修改帐号密码 (图文)
|
SQL 关系型数据库 Shell
解决Windows下Postgresql使用copy导入out文件报Permission denied的问题
解决Windows下Postgresql使用copy导入out文件报Permission denied的问题
161 0
解决Windows下Postgresql使用copy导入out文件报Permission denied的问题
|
关系型数据库 数据库 数据安全/隐私保护
Windows环境PostgreSQL安装部署
Windows环境PostgreSQL安装部署
160 0
Windows环境PostgreSQL安装部署

热门文章

最新文章