如何解决Dovecot 允许某些用户从 Active Directory 进行身份验证
我正在设置 dovecot-ldap,并且能够针对 Active Directory 进行身份验证。但是我想限制只有某些用户可以登录。
dovecot-ldap.conf
hosts = x.x.x.x
base = dc=xxxx,dc=local
ldap_version = 3
dn = xxxx/administrator
dnpass = xxxx
auth_bind = yes
auth_bind_userdn = %u
user_attrs = sAMAccountName=user
user_filter = (&(ObjectClass=person)(sAMAccountName=mail1))
我可以拥有来自 Active Directory 的数千个用户,但是我的最终目标是只允许用户“mail1”能够登录,所有其他用户都不能登录
解决方法
我能找到的最好的是https://wiki.dovecot.org/Authentication/RestrictAccess:
就像 SQL 一样,你可以在 pass_filter 中使用 %s,例如:
pass_filter = (&(objectClass=posixAccount)(uid=%u)(service=%s))
这需要同时设置 service=pop3 和 service=imap 用户对象的属性。
附加的 (service=%s) 指令可防止任何未明确定义“服务”的用户进行任何形式的访问(imap、pop、smtp、...)。除了“服务”,您可以在方便时使用任何属性,只需确保它包含您打算提供给您所谈论的特殊用户的服务。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。