我已将 RabbitMQ 服务器配置为使用 LDAP 身份验证并使用 advanced.config 文件标记用户。
我当前的配置是这样的。
auth_ldap.servers.1 = DC001.mydomain.net
auth_ldap.servers.2 = DC002.mydomain.net
auth_ldap.use_ssl = true
auth_ldap.port = 636
auth_ldap.dn_lookup_attribute = userPrincipalName
auth_ldap.dn_lookup_base = DC=mydomain,DC=net
[{rabbitmq_auth_backend_ldap,
[
{vhost_access_query, {in_group, "cn=RabbitUsers-${vhost},OU=Security Groups,DC=mydomain,DC=net"}},
{tag_queries, [ {administrator, {in_group, "CN=RabbitAdmins,OU=Security Groups,DC=mydomain,DC=net"}},
{management, {in_group, "CN=RabbitAdmins,OU=Security Groups,DC=mydomain,DC=net"}}]}
]
}].
这可以工作,但我必须在表单或 [email protected] 和密码中登录用户。
如果我把 dn_lookup_attribute 改为 SAMAccountName,我可以使用 mydomain/myuser 表单登录,但使用 tag_queries 授权并不奏效;我猜测它试图将完全合格的用户名(domain/user)与只属于这些组成员的用户名列表进行匹配。
我在文档中读到,也在日志中看到,有两个新的变量 ad_domain 和 ad_user 可以用来代替用户名,但我不明白我应该在哪里指明这些变量,以便让 ldap_plugin 使用它们。
谁能提供一些示例?
我在邮件列表中回答了这个问题。
https:/groups.google.comdtopicrabbitmq-usersDby1OWQKLs8discussion)。
注意:RabbitMQ团队会监控 RabbitMQ团队监控 rabbitmq-users
邮件列表 并且有时只在StackOverflow上回答问题。