#keepass #hook #display #interface #persistent #back-end #clipboard

bin+lib rkeep

持久化 KeePass 后端,具有显示钩子

2 个不稳定版本

0.4.1 2021年11月28日
0.2.0 2021年4月27日

#507 in 身份验证

MIT 许可证

15KB
314

rkeep

rkeep 是一个用 Rust 编写的、针对大多数具有 STDIN 功能的程序显示钩子的持久化 KeePass 后端。使用 dmenu、rofi 或类似界面快速将密码复制到剪贴板。

编辑 KeePass 明确包含在本项目中,但它是待办事项。欢迎 PR。

配置

配置可能包含多个会话,以防您有多个 KeePass 数据库。默认位置是 ~/.config/rkeep/config.toml,请参阅 rkeepd --helprkeep --help。在配置时,请参考 示例配置

示例配置

socket = "/tmp/rkeep.sock"

[[session]]
name = "mykeys" # Name of session
database = "/path/to/my.kdbx"
alive = 1800 # Keep database unlocked for (seconds)
clipboard = 10 # Clear clipboard after (seconds)

[session.command]
pass = ["rofi", "-dmenu", "-password", "-p", "Password", "-theme-str", 'entry { placeholder: ""; }']
list = ["rofi", "-dmenu", "-columns", "1", "-no-auto-select", "-i", "-p", "{session.name}"]

[[session]]
name = "myotherkeys"
database = "/path/to/my.other.kdbx"
keyfile = "/path/to/keyfile"
alive = 1800
clipboard = 10

[session.command]
pass = ["rofi", "-dmenu", "-password", "-p", "Password", "-theme-str", 'entry { placeholder: ""; }']
list = ["rofi", "-dmenu", "-columns", "1", "-no-auto-select", "-i", "-p", "{session.name}"]

如何使用

运行 install.sh 或手动安装。

服务器

您可以手动运行 rkeepd、在启动时或作为用户服务运行。请注意,该服务可能需要修改以在显示管理器之后启动,否则需要显示服务器的程序(例如 rofi)可能无法显示。

我个人没有有效的 After= 目标,因为我没有使用显示管理器,所以我只在 .xinitrc 中添加了 systemctl --user start rkeepd 并省略了启用服务。

客户端

设置一个键绑定或快捷键来运行例如 rkeep -s mykeys,或简单地手动运行。

示例

使用 keys 作为会话名称。

2021-04-03-1617473165_screenshot_2560x1440

2021-04-03-1617473299_screenshot_2560x1440

依赖关系

~6MB
~107K SLoC