maddy

Fork https://github.com/foxcpp/maddy

git clone git://git.lin.moe/go/maddy.git

 1# Separate username and password lookup
 2
 3auth.plain_separate module implements authentication using username:password pairs but can
 4use zero or more "table modules" (maddy-tables(5)) and one or more
 5authentication providers to verify credentials.
 6
 7```
 8auth.plain_separate {
 9	user ...
10	user ...
11	...
12	pass ...
13	pass ...
14	...
15}
16```
17
18How it works:
19- Initial username input is normalized using PRECIS UsernameCaseMapped profile.
20- Each table specified with the 'user' directive looked up using normalized
21  username. If match is not found in any table, authentication fails.
22- Each authentication provider specified with the 'pass' directive is tried.
23  If authentication with all providers fails - an error is returned.
24
25## Configuration directives
26
27### user _table-module_
28
29Configuration block for any module from maddy-tables(5) can be used here.
30
31Example:
32
33```
34user file /etc/maddy/allowed_users
35```
36
37---
38
39### pass _auth-provider_
40
41Configuration block for any auth. provider module can be used here, even
42'plain_split' itself.
43
44The used auth. provider must provide username:password pair-based
45authentication.