Commit Graph

69 Commits

Author SHA1 Message Date
Oystein Kristoffer Tveit a6f00d4313
Ensure user/db prefix has a `_` behind it 2024-08-19 00:48:13 +02:00
Oystein Kristoffer Tveit cd0b2c3e6d
sd_notify(ready) 2024-08-19 00:13:22 +02:00
Oystein Kristoffer Tveit 93469a6e84
Add more serverside logging 2024-08-19 00:11:11 +02:00
Oystein Kristoffer Tveit e4da639d5c
Fix sqlx parse error 2024-08-19 00:09:27 +02:00
Oystein Kristoffer Tveit daa8e069d3
Fix sql statement for `show-user` 2024-08-18 22:57:01 +02:00
Oystein Kristoffer Tveit 86b5b47f1e
Add some logging 2024-08-18 22:26:00 +02:00
Oystein Kristoffer Tveit 9d88c95f33
Fix systemd socket activation 2024-08-18 22:24:28 +02:00
Oystein Kristoffer Tveit 53f19b3d05
Replace socket authentication mechanism with SO_PEERCRED 2024-08-18 22:22:58 +02:00
Oystein Kristoffer Tveit 94c9a54c14 Bump all deps, fix db connection closing issues 2024-08-18 01:33:55 +02:00
Oystein Kristoffer Tveit 168f832aec
Readd "databases where user has privileges" to `show-user` 2024-08-18 00:17:55 +02:00
Oystein Kristoffer Tveit f957bbd9da
Don't validate prefixes and postfixes for db item ownership 2024-08-17 22:30:30 +02:00
Oystein Kristoffer Tveit 54a38255e6
privs editor: "New user" ->"Previously unprivileged" 2024-08-17 21:27:46 +02:00
Oystein Kristoffer Tveit 466d4a8b96
Use db name as example for privs editor 2024-08-17 21:24:59 +02:00
Oystein Kristoffer Tveit af86893acf
Rewrite entire codebase to split into client and server 2024-08-17 20:21:05 +02:00
Oystein Kristoffer Tveit 20e60ca5c7
Add protocol for authenticating a unix socket 2024-08-09 19:09:04 +02:00
Oystein Kristoffer Tveit dc29dd274a
flake.nix: create packaging, generate coverage 2024-08-09 19:05:16 +02:00
Oystein Kristoffer Tveit e420c1f4d5
edit-db-privs: display diffs and ask before commiting 2024-08-08 21:48:41 +02:00
Oystein Kristoffer Tveit 7ee60dacdc
Misc fixups to priv diff logic, add tests 2024-08-08 21:02:25 +02:00
Oystein Kristoffer Tveit 8a91e9a3d0
core/database_operations: replace single field struct with sqlx unwrap 2024-08-08 19:45:28 +02:00
Oystein Kristoffer Tveit e2193f47c1
Only pass the mysql config portion when connecting 2024-08-08 19:40:57 +02:00
Oystein Kristoffer Tveit 452fa22e9c
flake.nix: add cargo-nextest to devshell 2024-08-08 19:31:02 +02:00
Oystein Kristoffer Tveit 39a3f8ffd1
core/common: make testable, fix some status messages 2024-08-08 19:30:42 +02:00
Oystein Kristoffer Tveit 69870147f5
Add a few more status prints to the commands 2024-08-08 00:56:30 +02:00
Oystein Kristoffer Tveit f78c88517f
Add `lock-user` and `unlock-user` 2024-08-08 00:53:26 +02:00
Oystein Kristoffer Tveit 7e71b5071f
Report back more detailed results from commands 2024-08-07 23:33:07 +02:00
Oystein Kristoffer Tveit 21c1f8cc87
Fix clippy warnings 2024-08-07 23:10:37 +02:00
Oystein Kristoffer Tveit 011bcf9edc
More spring cleaning for privs, add test 2024-08-07 23:00:38 +02:00
Oystein Kristoffer Tveit 1bb1c133e8
Consistently name db connection `connection` 2024-08-07 21:54:13 +02:00
Oystein Kristoffer Tveit 5a7516aed8
Rename most instances of "permission" to "privilege" 2024-08-07 21:51:03 +02:00
Oystein Kristoffer Tveit 7025982d44
flake.nix: add mysql-client to devshell 2024-08-07 21:17:27 +02:00
Oystein Kristoffer Tveit 71c712dce0
treewide: move some code around, spring cleaning 2024-08-07 21:17:27 +02:00
Oystein Kristoffer Tveit 833251a1a2
show-user: add databases field, report when no users 2024-08-07 20:31:05 +02:00
Oystein Kristoffer Tveit a3c894061c
Remove already fixed TODO 2024-08-07 17:27:29 +02:00
Oystein Kristoffer Tveit e1f89b7b72
cargo clippy + fmt 2024-08-07 17:25:28 +02:00
Oystein Kristoffer Tveit 3d7d001f65
show-user: add `--json` flag 2024-08-07 17:22:23 +02:00
Oystein Kristoffer Tveit a9b8f7cee7
user_operations: don't fetch auth_string/password, only check existence 2024-08-07 17:20:13 +02:00
Oystein Kristoffer Tveit d0b750cd33
cargo clippy + fmt 2024-08-07 16:55:51 +02:00
Oystein Kristoffer Tveit d1c42dac8b
Wrap all operations in database transactions 2024-08-07 16:54:26 +02:00
Oystein Kristoffer Tveit cb83942cc8
tokio: use single thread 2024-08-07 16:45:24 +02:00
Oystein Kristoffer Tveit dadfa786ef
create-user: ask for password by default 2024-08-07 16:43:55 +02:00
Oystein Kristoffer Tveit f75d2fee7a
replace deps `edit` and `rpassword` with `dialoguer` 2024-08-07 16:43:26 +02:00
Oystein Kristoffer Tveit 404e5371e3
build.rs: don't fail on symlink creation 2024-08-07 16:19:40 +02:00
Oystein Kristoffer Tveit 05c15da59d
Remove already fixed TODOs 2024-08-07 16:18:48 +02:00
Oystein Kristoffer Tveit 9d0b632e9c
Inline database quotation functions 2024-08-07 16:17:14 +02:00
Oystein Kristoffer Tveit 01d502337d
Don't fail on erroneus db connection closure 2024-08-07 16:16:46 +02:00
Oystein Kristoffer Tveit 460a8d6abb
core/user_operations: add a few docstrings 2024-08-07 00:02:14 +02:00
Oystein Kristoffer Tveit 21c2fc2e8b
cargo fmt + clippy 2024-08-06 23:48:31 +02:00
Oystein Kristoffer Tveit fb7391a29c
edit-db-perm: ensure user exists before applying changes 2024-08-06 23:41:11 +02:00
Oystein Kristoffer Tveit 4353689a03 create compatibility layer for mysql-admutils commands 2024-08-06 23:31:47 +02:00
Oystein Kristoffer Tveit c473a4823e
flake.nix: remove openssl from devshell 2024-08-06 01:30:26 +02:00