view mod_auth_custom_http/README.markdown @ 5954:e5b5a74feb91

mod_rest: Workaround lack of number coercion in util.datamapper for HTTP upload util.datamapper will not coerce a string into an integer like the XEP-0363 'size' slot, which becomes a problem when using the HTTP GET method, passing fields as ?query parameters which are always strings.
author Kim Alvefur <zash@zash.se>
date Mon, 19 Aug 2024 20:08:41 +0200
parents f90cf59bee8e
children
line wrap: on
line source

---
summary: HTTP Authentication using custom JSON protocol
...

Introduction
============

To authenticate users, this module does a `POST` request to a configured
URL with a JSON payload. It is not async so requests block the server
until answered.

Configuration
=============

``` lua
VirtualHost "example.com"
authentication = "custom_http"
auth_custom_http = {
  post_url = "http://api.example.com/auth";
}
```

Protocol
========

The JSON payload consists of an object with `username` and `password`
members:

    {"username":"john","password":"secr1t"}

The module expects the response body to be exactly `true` if the
username and password are correct.