libwebsockets/minimal-examples-lowlevel/http-server/minimal-http-server-basicauth
2023-12-08 13:23:04 +00:00
..
mount-origin examples: move existing to m-e-lowlevel and start repoulating m-e with SS 2021-10-08 09:49:05 +01:00
mount-secret-origin examples: move existing to m-e-lowlevel and start repoulating m-e with SS 2021-10-08 09:49:05 +01:00
ba-passwords examples: move existing to m-e-lowlevel and start repoulating m-e with SS 2021-10-08 09:49:05 +01:00
CMakeLists.txt cmake: upgrade everyone to 3.5 minimum version 2023-12-08 13:23:04 +00:00
minimal-http-server-basicauth.c http: server: added no-cache handling to mounts 2021-12-13 19:02:56 +00:00
README.md examples: move existing to m-e-lowlevel and start repoulating m-e with SS 2021-10-08 09:49:05 +01:00

lws minimal http server basic auth

This demonstrates how to protect a mount using a password file outside of the mount itself.

The demo has two mounts, a normal one at / and one protected by basic auth at /secret.

The file at ./ba-passwords contains valid user:password combinations.

Discovering the authenticated user

After a successful authentication, the WSI_TOKEN_HTTP_AUTHORIZATION token contains the authenticated username.

build

 $ cmake . && make

usage

 $ ./lws-minimal-http-server-basic-auth
[2018/04/19 08:40:05:1333] USER: LWS minimal http server basic auth | visit http://localhost:7681
[2018/04/19 08:40:05:1333] NOTICE: Creating Vhost 'default' port 7681, 1 protocols, IPv6 off

Visit http://localhost:7681, and follow the link there to the secret area.

Give your browser "user" and "password" as the credentials.