Annotate

mod_auth_custom_http/README.markdown @ 2436:a01a3fb96302

mod_measure_memory: Module is global, no need for a global hook
author Kim Alvefur <zash@zash.se>
date Fri, 06 Jan 2017 17:07:01 +0100
parent 1934:6c569c481ffa
child 2868:f90cf59bee8e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1934
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1 ---
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
2 summary: HTTP Authentication using custom JSON protocol
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
3 ...
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
4
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
5 Introduction
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
6 ============
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
7
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
8 To authenticate users, this module does a `POST` request to a configured
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
9 URL with a JSON payload. It is not async so requests block the server
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10 until answered.
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
11
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
12 Configuration
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
13 =============
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
14
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
15 ``` lua
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
16 VirtualHost "example.com"
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
17 authentication = "custom_http"
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
18 auth_custom_http = "http://api.example.com/auth"
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
19 ```
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
20
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
21 Protocol
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
22 ========
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
23
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
24 The JSON payload consists of an object with `username` and `password`
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
25 members:
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
26
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
27 {"username":"john","password":"secr1t"}
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
28
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
29 The module expects the response body to be exactly `true` if the
6c569c481ffa mod_auth_custom_http: Add README
Kim Alvefur <zash@zash.se>
parents:
diff changeset
30 username and password are correct.