Go to file
antifallobst 8c388e6329
feat(cli): started work on a cli
2023-08-13 13:03:36 +02:00
doc initial commit 2023-08-11 22:45:35 +02:00
src feat(cli): started work on a cli 2023-08-13 13:03:36 +02:00
.gitignore feat(treewide): added real logging and implemented the backend for registration 2023-08-12 18:35:41 +02:00
Cargo.lock feat(cli): started work on a cli 2023-08-13 13:03:36 +02:00
Cargo.toml feat(cli): started work on a cli 2023-08-13 13:03:36 +02:00
LICENSE initial commit 2023-08-11 22:45:35 +02:00
README.md feat(cli): started work on a cli 2023-08-13 13:03:36 +02:00

README.md

BaseAuth

BaseAuth is a simple auth server, which is not meant to be usable in production environments.


API

The API uses HTTP and runs by default on port 8080. All requests to endpoints are POST. The Content-Type is always application/json, all payloads are JSON strings.

endpoints

/register

Registers a new account.

Content / Payload

Field Description
username The username of the account
password The accounts' clear text password

Responses

Response Description
200 User created successfully
400 Formal error in the request
403 Rejected for security reasons (sql injection protection)
409 The requested username is already in use
500 Internal server error

/authenticate

Authenticates using an existing account.

Content / Payload

Field Description
username The username of the account
password The accounts' clear text password

Responses

Response Description
200 Authenticated successfully
400 Formal error in the request
401 Authentication failure (wrong password)
403 Rejected for security reasons (sql injection production)
404 There was no account found with the specified name
500 Internal server error

CLI

Arguments

Argument Description
-D / --daemon <port> Starts the server in daemon mode, to await api requests on the specified port, etc.
-d / --delete <user,user> Deletes the account(s) associated with the specified username(s).
-l / --list Lists all registered accounts
-w / --dir <path> Specifies the working dir that will be used. This dir contains stuff like the database.