Dovecot - LDAP ロックされたアカウントを除外する

Dovecot - LDAP ロックされたアカウントを除外する

Dovecot を LDAP とともにインストールしました。ロックしようとしたユーザーが引き続きpwdAccountLockedTimeログインできることを除いて、すべて正常に動作します。

私の ldap.conf.ext ファイルは次のとおりです:

hosts = myldap
dn = cn=admin,dc=home,dc=com
dnpass = mysecret
#auth_bind = no
ldap_version = 3
base = ou=People,dc=home,dc=com
deref = never
scope = subtree
user_attrs =
user_filter = (&(objectclass=inetOrgPerson)(mail=%u)
pass_attrs = mail=user,userPassword=password
pass_filter = (&(objectclass=inetOrgPerson)(mail=%u))
default_pass_scheme = PLAIN

pwdAccountLockedTime属性を持つユーザーが無視されるようにするにはどうすればよいですか?

答え1

検索フィルターに追加します。(attr=*)属性の存在を確認したり、(!...)フィルターを否定 (つまり、存在しないことをチェック) するために使用します。

(&(objectclass=inetOrgPerson)(mail=%u)(!(pwdAccountLockedTime=*)))

拡張版:

(&
  (objectclass=inetOrgPerson)
  (mail=%u)
  (!
    (pwdAccountLockedTime=*)
  )
)

注意: Dovecot はアカウントがロックされていることを認識せず、アカウントが存在しないものと認識します。

関連情報