Skip to content

michix/seekret-service

Repository files navigation

Seekret Service

This service exposes secrets and usernames from a KeePass database file through a webservice interface. This way, secrets and usernames can be queried using curl. For security reasons, data read from the KeePass database is encrypted in memory.

Motivation

Usage of secrets in direnv:

GITLAB_TOKEN="$(curl --silent "http://localhost:8123/access-keys/GitLab/GitLab-API-Token-Shell/secret")"

The same way you may obtain the username of an entry:

GITLAB_TOKEN="$(curl --silent "http://localhost:8123/access-keys/GitLab/GitLab-API-Token-Shell/username")"

Usage

You may want to start the service in background using the following command:

nohup seekret-service --keepass-path "/path/to/keepassfile.kdbx" > /dev/null 2>&1 &

For further help please run:

seekret-service --help

Testing

Unit-Tests

RUST_LOG=debug cargo test -- --nocapture

Test with

RUST_LOG=debug cargo run -- --keepass-path test.kdbx
Note
Test-keyfile test.kdbx with password test and keyfile test.key.

Release

cargo build --release

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages