33.17. 连接参数的 LDAP 查找
如果已经在编译时打开了 LDAP 支持(configure的选项),就可以通过 LDAP 从一个中央服务器检索--with-ldaphost或dbname之类的连接参数。这样做的好处是如果一个数据库的连接参数改变,不需要在所有的客户端机器上更新连接信息。
LDAP 连接参数查找使用连接服务文件pg_service.conf(见第 33.16 节)。pg_service.conf中一个以ldap://开始的行将被识别为一个 LDAP URL 并且将执行一个 LDAP 查询。结果必须是一个keyword = value对列表,它将被用来设置连接选项。URL 必须遵循 RFC 1959 并且是形式
ldap://[hostname[:port]]/search_base?attribute?search_scope?filter
其中hostname默认为localhost并且port默认为
389。
一次成功的 LDAP 查找后,pg_service.conf的处理被终止。但是如果联系不上
LDAP 则会继续处理pg_service.conf。这就提供了后手,可以加入更多指向不同 LDAP
服务器的 LDAP URL 行、经典的keyword =
value对或者默认连接选项。如果你宁愿在这种情况下得到一个错误消息,在该 LDAP URL 之后增加一个语法错误的行。
一个和 LDIF 文件一起创建的 LDAP 条目实例
version:1 dn:cn=mydatabase,dc=mycompany,dc=com changetype:add objectclass:top objectclass:groupOfUniqueNames cn:mydatabase uniqueMember:host=dbserver.mycompany.com uniqueMember:port=5439 uniqueMember:dbname=mydb uniqueMember:user=mydb_user uniqueMember:sslmode=require
可以用下面的 LDAP URL 查询:
ldap://ldap.mycompany.com/dc=mycompany,dc=com?uniqueMember?one?(cn=mydatabase)
你也可以将常规的服务文件条目和 LDAP 查找混合。pg_service.conf中一节的完整例子:
version:1 dn:cn=mydatabase,dc=mycompany,dc=com changetype:add objectclass:top objectclass:device cn:mydatabase description:host=dbserver.mycompany.com description:port=5439 description:dbname=mydb description:user=mydb_user description:sslmode=require
可以用下面的 LDAP URL 查询到:
ldap://ldap.mycompany.com/dc=mycompany,dc=com?description?one?(cn=mydatabase)
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




