Adds an authentication system.

* The new Rust utility "webusers" manages /opt/libreqos/webusers.toml.
* You can add/update/remove/list users from that tool.
* The "allow anonymous" option in webusers.toml permits access for
  unauthenticated users, but won't let them change anything. This is
  for payne demonstrations.
* All web APIs and pages should now be secured, requiring a login.
* The login requires cookies.

Signed-off-by: Herbert Wolverson <herberticus@gmail.com>
This commit is contained in:
Herbert Wolverson
2023-01-09 18:55:14 +00:00
parent 8060a50f0d
commit 165dae030b
26 changed files with 802 additions and 113 deletions

2
.gitignore vendored
View File

@@ -48,6 +48,7 @@ src/tinsStats.json
src/linux_tc.txt
src/lastRun.txt
src/liblqos_python.so
src/webusers.toml
# Ignore Rust build artifacts
src/rust/target
@@ -57,6 +58,7 @@ src/bin/lqtop
src/bin/xdp_iphash_to_cpu_cmdline
src/bin/xdp_pping
src/bin/lqos_node_manager
src/bin/webusers
src/bin/Rocket.toml