我正在尝试在MongoDB企业安装上使用LDAP身份验证。
我按如下所示设置了mongo网站建议的安全配置。
security:
authorization: "enabled"
ldap:
servers: "activedirectory.example.net"
bind:
queryUser: "mongodbadmin@dba.example.com"
queryPassword: "secret123"
userToDNMapping:
'[
{
match: "(.+)",
ldapQuery: "DC=example,DC=com??sub?(userPrincipalName={0})"
}
]'
authz:
queryTemplate: "DC=example,DC=com??sub?(&(objectClass=group)(member:1.2.840.113556.1.4.1941:={USER}))"
setParameter:
authenticationMechanisms: "PLAIN"
在我的管理数据库中,我创建了这个角色
[
{
"role" : "DC=example,DC=com",
"db" : "admin",
"isBuiltin" : false,
"roles" : [
{
"role" : "readWrite",
"db" : "test"
}
],
"inheritedRoles" : [
{
"role" : "readWrite",
"db" : "test"
}
]
}
]
并且没有在$ external DB上创建任何用户
如mongo网站所解释,所有与DC = example,DC = com角色匹配的成员都可以访问测试数据库。
我只需要将访问权限限制为AD组DC = example,DC = com的特定用户,而无需创建任何其他AD组。 有可能这样吗?
谢谢