This documentation is for Dovecot v2.x, see wiki1 for v1.x documentation.
Differences between revisions 17 and 19 (spanning 2 versions)
Revision 17 as of 2010-08-20 15:55:38
Size: 1684
Editor: TimoSirainen
Comment:
Revision 19 as of 2019-09-11 14:00:18
Size: 105
Comment: Moved to new doc
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= Multiple Authentication Databases =

Dovecot supports defining multiple authentication databases, so that if the password doesn't match in the first database, it checks the next one. This can be useful if you want to easily support having both local system users in {{{/etc/passwd}}} and virtual users.

Currently the fallback works only with the PLAIN authentication mechanism.

Often you also want a different mail location for system and virtual users. The best way to do this would be to always have mails stored below the home directory ({{{mail_location = maildir:~/Maildir}}}), but if this isn't possible you can do this by pointing [[MailLocation|mail_location]] to system users' mail location and have the virtual userdb override it by returning {{{mail}}} [[UserDatabase/ExtraFields|extra field]].

== Example ==

dovecot.conf:

{{{
# the default mail location for system users, this will be overridden in userdb sql.
mail_location = maildir:~/Maildir

auth_mechanisms = plain

# try to authenticate using SQL database first
passdb {
  driver = sql
  args = /etc/dovecot/dovecot-sql.conf.ext
}
# fallback to PAM
passdb {
  driver = pam
}

# look up users from SQL first (even if authentication was done using PAM!)
userdb {
  driver = sql
  args = /etc/dovecot/dovecot-sql.conf.ext
}
# if not found, fallback to /etc/passwd
userdb {
  driver = passwd
}
}}}

dovecot-sql.conf.ext:

{{{
password_query = SELECT userid as user, password FROM users WHERE userid = '%u'
# returning mail overrides mail_location setting for SQL users.
user_query = SELECT uid, gid, 'maildir:/var/vmail/%u' as mail FROM users WHERE userid = '%u'
}}}
Moved to https://doc.dovecot.org/configuration_manual/authentication/multiple_authentication_databases/

None: Authentication/MultipleDatabases (last edited 2019-09-11 14:00:18 by MichaelSlusarz)