Mercurial > prosody-modules
annotate mod_auth_custom_http/README.markdown @ 5256:44f7edd4f845
mod_http_oauth2: Reject non-local hosts in more code paths
We're not issuing tokens for users on remote hosts, we can't even
authenticate them since they're remote. Thus the host is always the
local module.host so no need to pass around the host in most cases or
use it for anything but enforcing the same host.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Thu, 16 Mar 2023 17:52:10 +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. |