7.3. 使用存储的 systemd-creds 密码连接到您的数据库
您可以使用 systemd-creds
工具安全地存储您的加密凭证,并使用存储在 systemd-creds
中的 secret 连接到您选择的数据库:PostgreSQL、SQLite 或 MySQL。
先决条件
- 命令行助手。
- 访问数据库配置文件。
流程
-
访问
/etc/xdg/command-line-assistant/config.toml
处的数据库配置文件。 从
[database]
部分中删除username
和password
参数,例如:[database] type = "postgresql" host = "localhost" port = "5432" database = "history"
[database] type = "postgresql" host = "localhost" port = "5432" database = "history"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意如果在配置文件中保留用户名和密码,则这些凭证优先于
systemd-creds
工具。为您的用户名或密码生成加密凭证。以下示例使用
systemd-ask-password
命令。名称必须遵循database-username
和database-password
的模式,否则clad
无法正确加载凭证。要生成加密的用户名,请运行以下命令:
systemd-ask-password -n | ( echo "[Service]" && systemd-creds encrypt --name=<database-username> -p - - ) >/etc/systemd/system/clad.service.d/<username>.conf
$ systemd-ask-password -n | ( echo "[Service]" && systemd-creds encrypt --name=<database-username> -p - - ) >/etc/systemd/system/clad.service.d/<username>.conf
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要生成加密的密码,请输入:
systemd-ask-password -n | ( echo "[Service]" && systemd-creds encrypt --name=<database-password> -p - - ) >/etc/systemd/system/clad.service.d/<password>.conf
$ systemd-ask-password -n | ( echo "[Service]" && systemd-creds encrypt --name=<database-password> -p - - ) >/etc/systemd/system/clad.service.d/<password>.conf
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
更新数据库凭证后,重新加载
systemd
,并重启clad
守护进程以应用更改:sudo systemctl restart clad
$ sudo systemctl restart clad
Copy to Clipboard Copied! Toggle word wrap Toggle overflow