1. 程式人生 > >ldap集成rabbitmq

ldap集成rabbitmq

tag 用戶 需要 int nds conf ssl 日誌 tps

rabbitmq版本: 3.7.4

rabbitmq支持ldap需要開啟插件:

rabbitmq-plugins enable rabbitmq_auth_backend_ldap

rabbitmq主要通過兩個配置文件對ldap服務進行控制訪問: rabbitmq.conf,advanced.config。

rabbitmq.conf: ldap連接,查詢配置。

advanced.config:rabbitmq權限配置。

rabbitmq.conf的配置如下:

auth_backends.1 = internal
auth_backends.2 = ldap
auth_ldap.servers.1 = ldap.xxxxx.net


auth_ldap.port = 389
auth_ldap.use_ssl = false
auth_ldap.user_dn_pattern= cn=${username},ou=People,dc=xxxx,dc=xxxxx,dc=xxxx

#如果用戶存在在內部數據庫,則對用戶執行授權檢查,不存在則在LDAP中查找用戶並進行校驗
auth_backends.1 = internal
auth_backends.2 = ldap

#ldap服務器地址,可配置多個,將按順序嘗試進行連接,直到與其中一個連接成功為止
auth_ldap.servers.1 = ldap01.xxxxx.net
auth_ldap.servers.2 = ldap02.xxxxx.net

#是否使用tls連接ldap服務器
auth_ldap.use_ssl = false

#根據匹配字段查找符合條件的用戶
auth_ldap.user_dn_pattern= cn=${username},ou=People,dc=xxxx,dc=xxxxx,dc=xxxx

advanced.config的配置如下:

[{rabbitmq_auth_backend_ldap,[
{tag_queries, [{administrator, {in_group, "cn=rabbitmq-dev-administrator,ou=rabbitmq,dc=ldap,dc=safetytaxfree,dc=net","uniqueMember"}},
{management

, {in_group, "cn=rabbitmq-dev-management,ou=rabbitmq,dc=ldap,dc=safetytaxfree,dc=net","uniqueMember"}}]}
]}].

#返回ou=rabbitmq組中cn=rabbitmq-dev-administrator 匹配屬性為uniqueMember的用戶,授予administrator的權限
{administrator, {in_group, "cn=rabbitmq-dev-administrator,ou=rabbitmq,dc=ldap,dc=safetytaxfree,dc=net","uniqueMember"}

#返回ou=rabbitmq組中cn=rabbitmq-dev-management 匹配屬性為uniqueMember的用戶,授予management的權限
{management, {in_group, "cn=rabbitmq-dev-management,ou=rabbitmq,dc=ldap,dc=safetytaxfree,dc=net","uniqueMember"

rabbitmq管理插件的以下五種權限標簽:

技術分享圖片

以上是對兩種配置文件大致介紹,現在啟動rabbitmq驗證配置是否正確。

啟動服務: rabbitmq-server ,觀察日誌查看服務是否啟動正常

技術分享圖片

主要查看是否加載上圖紅框所示的兩個配置文件,如果未成功加載,需在 /etc/rabbitmq/rabbitmq-env.conf 中添加以下配置:
CONFIG_FILE="/opt/rabbitmq/etc/rabbitmq/rabbitmq.conf"
ADVANCED_CONFIG_FILE="/opt/rabbitmq/etc/rabbitmq/advanced.config"

接下來驗證賬戶是否可以登錄

技術分享圖片

登錄成功,查看ldap中對應組信息:

技術分享圖片

以上就是ldap+rabbitmq的配置。

參考鏈接:

https://www.rabbitmq.com/ldap.html(官方文檔)

http://www.rabbitmq.com.s.icopy.site/ldap.html

ldap集成rabbitmq