10.2. 保存された systemd-creds パスワードを使用したデータベースへの接続
systemd-creds ツールを使用して暗号化された認証情報をセキュアに保存し、systemd-creds に保存されたシークレットを使用して、選択したデータベース (PostgreSQL、SQLite、または MySQL) に接続できます。
前提条件
- コマンドラインアシスタント。
- データベース設定ファイルへのアクセス。
手順
-
/etc/xdg/command-line-assistant/config.tomlにあるデータベース設定ファイルにアクセスします。 [database]セクションからusernameおよびpasswordパラメーターを削除します。次に例を示します。[database] type = "postgresql" host = "localhost" port = "5432" database = "history"注記ユーザー名とパスワードを設定ファイルに残しておくと、これらの認証情報が
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_password> -p - - ) >/etc/systemd/system/clad.service.d/<password>.conf
データベースの認証情報を更新した後、
systemdを再ロードし、cladデーモンを再起動して変更を適用します。$ sudo systemctl daemon-reload $ sudo systemctl restart clad