Expand description
User table + RBAC types for v4.1.
Three roles, narrow on purpose:
Admin— full read+write + can manage other usersReadWrite— full read+write, no user-mgmtReadOnly— SELECT / SHOW only
Passwords stored as BLAKE3(salt || password) — the salt is a random 16-byte value per user, kept inline with the record so we never need to hash twice. The hash is not designed to resist a determined offline attack on the snapshot file (that’s what file perms are for in the docker-compose deployment shape); it’s enough that the snapshot itself doesn’t leak plaintext, and that an in-memory dump can’t trivially reverse a typed password.
Structs§
- Scram
Secrets - SCRAM-SHA-256 stored credentials per RFC 5802 §5.
saltanditersare sent to the client in server-first;stored_keyandserver_keyare kept secret and used in the final-message verification. - User
Record - User
Store
Enums§
Constants§
Functions§
- compute_
scram_ secrets - v4.8: derive SCRAM-SHA-256 stored credentials per RFC 5802 §3.