| Crates.io | sifredb-cli |
| lib.rs | sifredb-cli |
| version | 0.1.1 |
| created_at | 2025-11-13 06:42:58.336095+00 |
| updated_at | 2025-11-14 00:44:02.573849+00 |
| description | CLI tool for SifreDB key management |
| homepage | |
| repository | https://github.com/Tuntii/sifredb |
| max_upload_size | |
| id | 1930508 |
| size | 20,761 |
Command-line tool for SifreDB key management.
cargo install sifredb-cli
git clone https://github.com/Tuntii/sifredb.git
cd sifredb/sifredb-cli
cargo install --path .
sifredb init ./keys
sifredb keygen --tenant tenant_a --table users --column email --version 1
sifredb list ./keys
sifredb rotate --tenant tenant_a --table users --column email --from 1 --to 2
sifredb validate ./keys
initInitialize a new key directory structure.
sifredb init <directory>
keygenGenerate a new encryption key.
sifredb keygen [OPTIONS]
Options:
--tenant <TENANT> Tenant ID
--table <TABLE> Table name
--column <COLUMN> Column name
--version <VERSION> Key version [default: 1]
--output <OUTPUT> Output directory [default: ./keys]
listList all keys in a directory.
sifredb list <directory>
rotateRotate encryption keys.
sifredb rotate [OPTIONS]
Options:
--tenant <TENANT> Tenant ID
--table <TABLE> Table name
--column <COLUMN> Column name
--from <VERSION> Current version
--to <VERSION> New version
--keys <DIRECTORY> Key directory [default: ./keys]
validateValidate key files and directory structure.
sifredb validate <directory>
The CLI can be configured via environment variables:
SIFREDB_KEYS_DIR: Default key directorySIFREDB_LOG_LEVEL: Logging level (debug, info, warn, error)# 1. Initialize key directory
sifredb init ./my-keys
# 2. Generate keys for different contexts
sifredb keygen --tenant tenant_a --table users --column email --output ./my-keys
sifredb keygen --tenant tenant_a --table users --column ssn --output ./my-keys
sifredb keygen --tenant tenant_b --table users --column email --output ./my-keys
# 3. List all keys
sifredb list ./my-keys
# 4. Rotate a key
sifredb rotate --tenant tenant_a --table users --column email --from 1 --to 2 --keys ./my-keys
# 5. Validate everything
sifredb validate ./my-keys
# Generate keys for multiple tenants
for tenant in tenant_a tenant_b tenant_c; do
sifredb keygen --tenant $tenant --table users --column email
sifredb keygen --tenant $tenant --table users --column ssn
done
Licensed under either of:
at your option.
Contributions are welcome! Please feel free to submit a Pull Request.