web-dev-qa-db-ja.com

Gitを使用したパスワードの保存はどの程度安全ですか?

私は職場でGitを使用していますが、会社のポリシーにより、パスワードを安全でない方法で保存することは許可されていません。 Gitサーバーへのパスワードの保存にgit config credential.helper storeを使用するよりも優れたオプションはありますか?

追伸サーバーで許可されていないため、キー認証を使用できません。

20
dk14

git config credential.helper storeはあまり安全ではありません。 documentation で述べたように:

このヘルパーを使用すると、パスワードが暗号化されずにディスクに保存され、ファイルシステムのアクセス許可によってのみ保護されます

〜/ .git-credentialsファイルには、システム上の他のユーザーによる読み取りを防止するためのファイルシステム権限が設定されていますが、暗号化されたり、その他の方法で保護されたりすることはありません。

したがって、パスワードはそのまま保存されます。 Gitはキーチェーンの使用を許可しますgit config --global credential.helper osxkeychain OSXのため、より安全であるようです。 Linuxシステムでは git config credential.helper cache は、パスワードをメモリに保存します。または、git help credentials

独自のカスタムヘルパーを作成して、資格情報を保持する任意のシステムとのインターフェースをとることができます。詳細については、Gitのドキュメント credentials API を参照してください

さらに、@ VonCはクロスプラットフォーム GPGベースのソリューション を指しています。 .netrcファイルについて この質問 も参照してください。

Linuxには gnome-keyring helper もあります(@jazakmeisterに助言をありがとう)

43
dk14