シェルでパスワードを外部変数として使用するにはどうすればよいですか?

シェルでパスワードを外部変数として使用するにはどうすればよいですか?

私は、MySQL データベースのバックアップに使用する MySQL バックアップ スクリプトを持っています。非常に便利で、cron を使用して一定の間隔で実行されます。ただし、このスクリプトに何らかの方法で MySQL パスワードを提供する必要があります。このパスワードはすべてのサーバーで同じではありませんが、複数のサーバーを管理しているため、この特定のスクリプトは、他のスクリプトと時々同期される git 制御のリポジトリの一部です。ここでの質問は、パスワードが異なる場合、この同じスクリプトを git リポジトリの一部として使用するにはどうすればよいかということです。私が思いつく解決策は、パスワードをスクリプト自体ではなく、シェルの外部/グローバル変数として定義することです。そうすれば、スクリプトをすべてのサーバーで同じにすることができます。ただし、適切な方法がわかりませんし、これが良いアイデアであるかどうかもわかりません (セキュリティ/ベスト プラクティスの観点から)。

何かご意見は?

答え1

まあ、少なくともパスワードを Git に保存するのは確かに悪い考えです。

そのためには .config ファイルを使用する方がよいでしょう。また、git にいくつかの .config-example を追加しておくと便利ですが、拡張子が異なり、もちろん実際のパスワードは使用しません。これにより、コードと構成内の変数に関する変更を同期できます。また、このような .config-example は、たとえば、新しいインストールの開始点として使用できます。

関連情報