added names: passdb allusers { ... } passdb postmasterfilter { ... username_filter = user1@postmaster.local.one ... } passdb user2filter { .... username_filter = user3@user2.local.one ,,, }
try "doveadm auth test user3@user2.local.one" and got logs: Aug 1 16:08:02 auth: Debug: auth client connected (pid=0) Aug 1 16:08:02 auth: Debug: client in: AUTH 1 PLAIN service=doveadm debug resp=<hidden> Aug 1 16:08:02 auth: Debug: allusers(user3@user2.local.one): Performing passdb lookup Aug 1 16:08:02 auth: Debug: allusers(user3@user2.local.one): execute: /usr/local/bin/php /usr/local/dovecot/bin/checkpassword.php /usr/local/libexec/dovecot/checkpassword-reply Aug 1 16:08:02 auth: Debug: allusers(user3@user2.local.one): Received input: Aug 1 16:08:02 auth: Debug: allusers(user3@user2.local.one): exit_status=1 Aug 1 16:08:02 auth: allusers(user3@user2.local.one): Login failed (status=1) Aug 1 16:08:02 auth: Debug: allusers(user3@user2.local.one): Finished passdb lookup Aug 1 16:08:02 auth: Debug: postmasterfilter(user3@user2.local.one): Performing passdb lookup Aug 1 16:08:02 auth: Debug: postmasterfilter(user3@user2.local.one): username changed user3@user2.local.one -> user3@local.one Aug 1 16:08:02 auth: Debug: postmasterfilter(user3@local.one): execute: /usr/local/bin/php /usr/local/dovecot/bin/checkpassword.php /usr/local/libexec/dovecot/checkpassword-reply Aug 1 16:08:02 auth: Debug: postmasterfilter(user3@local.one): Received input: user=user3@local.one userdb_home=/var/spool/mail/ userdb_uid=dovecot userdb_gid=dovecot Aug 1 16:08:02 auth: Debug: postmasterfilter(user3@local.one): exit_status=0 Aug 1 16:08:02 auth: Debug: postmasterfilter(user3@local.one): username changed user3@local.one -> postmaster@local.one Aug 1 16:08:02 auth: Debug: postmasterfilter(postmaster@local.one): Finished passdb lookup Aug 1 16:08:02 auth: Debug: auth(postmaster@local.one): Auth request finished Aug 1 16:08:02 auth: Debug: client passdb out: OK 1 user=postmaster@local.one original_user=user3@user2.local.one
Same result: it should skip postmasterfilter passdb and work with user2filter, but it didn't