Mercurial > prosody-modules
annotate mod_auth_custom_http/README.markdown @ 5536:96dec7681af8
mod_firewall: Update user marks to store instantly via map store
The original approach was to keep marks in memory only, and persist them at
shutdown. That saves I/O, at the cost of potentially losing marks on an
unclean shutdown.
This change persists marks instantly, which may have some performance overhead
but should be more "correct".
It also splits the marking/unmarking into an event which may be watched or
even fired by other modules.
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Thu, 08 Jun 2023 16:20:42 +0100 |
parents | f90cf59bee8e |
children |
rev | line source |
---|---|
1934 | 1 --- |
2 summary: HTTP Authentication using custom JSON protocol | |
3 ... | |
4 | |
5 Introduction | |
6 ============ | |
7 | |
8 To authenticate users, this module does a `POST` request to a configured | |
9 URL with a JSON payload. It is not async so requests block the server | |
10 until answered. | |
11 | |
12 Configuration | |
13 ============= | |
14 | |
15 ``` lua | |
16 VirtualHost "example.com" | |
17 authentication = "custom_http" | |
2868
f90cf59bee8e
mod_auth_custom_http: fix documentation config example
Senya <senya@kinetiksoft.com>
parents:
1934
diff
changeset
|
18 auth_custom_http = { |
f90cf59bee8e
mod_auth_custom_http: fix documentation config example
Senya <senya@kinetiksoft.com>
parents:
1934
diff
changeset
|
19 post_url = "http://api.example.com/auth"; |
f90cf59bee8e
mod_auth_custom_http: fix documentation config example
Senya <senya@kinetiksoft.com>
parents:
1934
diff
changeset
|
20 } |
1934 | 21 ``` |
22 | |
23 Protocol | |
24 ======== | |
25 | |
26 The JSON payload consists of an object with `username` and `password` | |
27 members: | |
28 | |
29 {"username":"john","password":"secr1t"} | |
30 | |
31 The module expects the response body to be exactly `true` if the | |
32 username and password are correct. |