Mercurial > prosody-modules
annotate mod_auth_dovecot/README.markdown @ 5511:0860497152af
mod_http_oauth2: Record hash of client_id to allow future verification
RFC 6819 section 5.2.2.2 states that refresh tokens MUST be bound to the
client. In order to do that, we must record something that can
definitely tie the client to the grant. Since the full client_id is so
large (why we have this client_subset function), a hash is stored
instead.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Fri, 02 Jun 2023 10:14:16 +0200 |
parents | dd2c45d05f73 |
children |
rev | line source |
---|---|
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
1 --- |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
2 labels: |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
3 - 'Stage-Alpha' |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
4 - 'Type-Auth' |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
5 summary: Dovecot authentication module |
4940
1a58345d91a9
mod_auth_dovecot: Add luarocks metadata to make automatic packaging work
Kim Alvefur <zash@zash.se>
parents:
3306
diff
changeset
|
6 rockspec: |
1a58345d91a9
mod_auth_dovecot: Add luarocks metadata to make automatic packaging work
Kim Alvefur <zash@zash.se>
parents:
3306
diff
changeset
|
7 build: |
1a58345d91a9
mod_auth_dovecot: Add luarocks metadata to make automatic packaging work
Kim Alvefur <zash@zash.se>
parents:
3306
diff
changeset
|
8 modules: |
5121
dd2c45d05f73
mod_auth_dovecot: Fix plugin package (hopefully) (thanks nw)
Kim Alvefur <zash@zash.se>
parents:
4940
diff
changeset
|
9 mod_auth_dovecot: auth_dovecot/mod_auth_dovecot.lua |
dd2c45d05f73
mod_auth_dovecot: Fix plugin package (hopefully) (thanks nw)
Kim Alvefur <zash@zash.se>
parents:
4940
diff
changeset
|
10 mod_auth_dovecot.sasl_dovecot: auth_dovecot/sasl_dovecot.lib.lua |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
11 ... |
1782 | 12 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
13 Introduction |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
14 ============ |
1782 | 15 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
16 This is a Prosody authentication plugin which uses Dovecot as the |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
17 backend. |
1782 | 18 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
19 Configuration |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
20 ============= |
1782 | 21 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
22 As with all auth modules, there is no need to add this to |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
23 modules\_enabled. Simply add in the global section, or for the relevant |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
24 hosts: |
1782 | 25 |
1820
8de50be756e5
Various README files: Correct indentation levels, fix syntax and other small fixes
Kim Alvefur <zash@zash.se>
parents:
1803
diff
changeset
|
26 authentication = "dovecot" |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
27 |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
28 These options are used by mod\_auth\_dovecot: |
1782 | 29 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
30 Name Description Default value |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
31 ----------------------- ----------------------------------------- ------------------------------- |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
32 dovecot\_auth\_socket Path to the Dovecot auth socket "/var/run/dovecot/auth-login" |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
33 auth\_append\_host If true, sends the bare JID as authzid. false |
1782 | 34 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
35 The Dovecot user and group must have access to connect to this socket. |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
36 You can create a new dedicated socket for Prosody too. Add the below to |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
37 the *socket listen* section of /etc/dovecot/dovecot.conf, and match the |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
38 socket path in Prosody's dovecot\_auth\_socket setting. |
1782 | 39 |
3299
2c62fda477a5
mod_auth_dovecot/README: Expand example
Kim Alvefur <zash@zash.se>
parents:
1820
diff
changeset
|
40 service auth { |
3306
b06fc0d03003
mod_auth_dovecot: Update example dovecot config
Kim Alvefur <zash@zash.se>
parents:
3299
diff
changeset
|
41 unix_listener /var/spool/prosody/private/auth-client { |
b06fc0d03003
mod_auth_dovecot: Update example dovecot config
Kim Alvefur <zash@zash.se>
parents:
3299
diff
changeset
|
42 mode = 0660 |
b06fc0d03003
mod_auth_dovecot: Update example dovecot config
Kim Alvefur <zash@zash.se>
parents:
3299
diff
changeset
|
43 user = prosody |
b06fc0d03003
mod_auth_dovecot: Update example dovecot config
Kim Alvefur <zash@zash.se>
parents:
3299
diff
changeset
|
44 group = prosody |
3299
2c62fda477a5
mod_auth_dovecot/README: Expand example
Kim Alvefur <zash@zash.se>
parents:
1820
diff
changeset
|
45 } |
2c62fda477a5
mod_auth_dovecot/README: Expand example
Kim Alvefur <zash@zash.se>
parents:
1820
diff
changeset
|
46 } |
1782 | 47 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
48 Make sure the socket directories exist and are owned by the Prosody |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
49 user. |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
50 |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
51 Note: Dovecot uses UNIX sockets by default. luasocket is compiled with |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
52 UNIX socket on debian/ubuntu by default, but is not on many other |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
53 platforms. If you run into this issue, you would need to either |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
54 recompile luasocket with UNIX socket support, or use Dovecot 2.x's TCP |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
55 socket support. |
1782 | 56 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
57 TCP socket support for Dovecot 2.x |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
58 ---------------------------------- |
1782 | 59 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
60 Dovecot 2.x includes TCP socket support. These are the relevant |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
61 mod\_auth\_dovecot options: |
1782 | 62 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
63 Name Description Default value |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
64 --------------------- ------------------------- ---------------------------- |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
65 dovecot\_auth\_host Hostname to connect to. "127.0.0.1" |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
66 dovecot\_auth\_port Port to connect to. *(this value is required)* |
1782 | 67 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
68 Compatibility |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
69 ============= |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
70 |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
71 ------- ------- |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
72 trunk Works |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
73 0.8 Works |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
74 ------- ------- |