dovecot-pgsql.conf revision c067f92edf6bc5bba2b3b6216a9b3525cd173eae
# For the pgsql passdb module, you'll need a database with a table that
# contains fields for at least the userid and password. If you want to
# use the user@domain syntax, you might want to have a separate domain
# field as well.
#
# directories, you can use the static userdb module to generate the home
# dir based on the userid and domain. In this case, you won't need fields
# for home, uid, or gid in the database.
#
# If you prefer to use the pgsql userdb module, you'll want to add fields
# for home, uid, and gid. Here is an example table:
#
# CREATE TABLE users (
# userid VARCHAR(128) NOT NULL,
# password VARCHAR(64) NOT NULL,
# home VARCHAR(256) NOT NULL,
# uid INTEGER NOT NULL,
# gid INTEGER NOT NULL,
# active CHAR(1) DEFAULT 'Y' NOT NULL
# );
# Database connection string.
#
# For available options, see the PostgreSQL documention for the PQconnectdb
# function of libpq.
#
# Examples:
# connect = host=192.168.1.1 dbname=users
# connect = host=sql.example.com dbname=virtual user=virtual password=blarg
#
#connect = dbname=virtual user=virtual
# Default password scheme.
#
# Currently supported schemes include PLAIN, PLAIN-MD5, DIGEST-MD5, and CRYPT.
#
#default_pass_scheme = PLAIN-MD5
# Query to retrieve the password.
#
# The query should return one row, one column. If more than one row or column
# is returned, authentication will automatically fail.
#
# Available substitutions:
# %u = entire userid
# %n = user part of user@domain
# %d = domain part of user@domain
#
# Example:
# password_query = SELECT password FROM users WHERE userid = '%n' AND domain = '%d'
# password_query = SELECT password FROM users WHERE userid = '%u' AND active = 'Y'
#
#password_query = SELECT password FROM users WHERE userid = '%u'
# Query to retrieve the user information.
#
# The query must return only one row. The columns to return are:
# home - Home directory
# mail - MAIL environment
# uid - System UID
# gid - System GID
#
# Either home or mail is required. uid and gid are required. If more than one
# row is returned or there's missing fields, login will automatically fail.
#
# Examples
# user_query = SELECT home, uid, gid FROM users WHERE userid = '%n' AND domain = '%d'
# user_query = SELECT dir AS home, user AS uid, group AS gid FROM users where userid = '%u'
# user_query = SELECT home, 501 AS uid, 501 AS gid FROM users WHERE userid = '%u'
#
#user_query = SELECT home, uid, gid FROM users WHERE userid = '%u'