Gitとの統合
Git認証とコミット署名のためのKeeper SSHエージェント統合

KeeperのSSHエージェントは、Gitとの認証およびコミット署名にシームレスに統合できます。秘密鍵をデバイス上に保存せず、Keeperボルト内で安全に管理することで、機密性の高い鍵のローカルでの漏洩を防ぎ、セキュリティを強化します。
本ページでは、GitHubで使用する認証用キーと署名用キーをそれぞれ作成・設定し、それらをすべてKeeperによって安全に管理する方法を取り扱います。認証と署名で異なる鍵を使用することで、役割を明確に分離し、セキュリティ体制をさらに強化できます。
要件
機能
GitHub認証
以下はKeeperを使用してGitHubで認証する手順です。
これにより、Keeper ダイアログがすぐに起動し、Github 認証キーを承認するようになります。

[承認] をクリックすると、Keeper に保存されているキーを使用してGithubで認証が行われます。
セットアップが完了しました。
コミットの署名
以下は、Keeperを使って GitHubコミットに署名するための専用キーを作成するて手順です。
ローカル秘密キーを削除する
Keeperで秘密キーが安全に管理されているため、ローカルの秘密キーのみ削除します。公開キー (xxx.pub) は署名時に識別に使用されるため、保持します。
rm /Users/craig/.ssh/id_ecdsa
公開キーのファイル名をより分かりやすいものに変更します。
cd ~/.ssh
mv id_ecdsa.pub git_signing_key.pub
公開キーを識別できるよう、ユーザー名と公開キーの内容を ~/.ssh/allowed_signers
というファイルに記載します。以下の形式で入力します。
craig@keeperdemo.io <git_signing_key.pub の内容>
この例では、ファイルの内容は以下のようになります。
craig@keeperdemo.io ecdsa-sha2-nistp521 AAAAE2VjZHNhLXNoYTItbmlzdHA1MjEAAAAIbmlzdHA1MjEAAACFBAD2VeqOZ9bk2ABF6AZ63qJY2sDfz0kJJPfDW0zpres0/p1YGGJBYtyU4l3nIgwx0K2iEKFty429N2NNfIMBsqI+ngDq3/VGaexmZxymJnCzOl9+J1IQr6u05jZHLsk1FOALjOSm9jv4bF/DyK4oh5shKMlTHAeDWPfqMd3JwncSYBzKfA== craig@keeperdemo.io
Git署名を有効にする
ターミナルで以下のコマンドを実行し、GitHubにこの新しい署名キーと allowed_signers
ファイルを使用するよう指示します。
git config --global user.signingkey ~/.ssh/git_signing_key.pub
git config --global gpg.format ssh
git config --global commit.gpgsign true
git config --global gpg.ssh.allowedSignersFile ~/.ssh/allowed_signers
この操作により、~/.gitconfig
に複数の行が追加され、設定がグローバルに適用されます。グローバルではなく、個別のリポジトリごとに設定を行うことも可能です。
署名の検証
リポジトリから、空のコミットを実行して署名プロセスをテストしてみましょう。
git commit --allow-empty -m "Test commit with SSH signing"
これにより、キーを承認するためのKeeperダイアログがすぐに起動します。

コミットに署名が適用されたことを確認するには、以下のコマンドを実行します。
git log --show-signature
以下のような応答が表示されます。
commit 52319faf2e7c02a (HEAD -> main)
Good "git" signature for craig@keeperdemo.io with ECDSA key SHA256:xxxxxxx
Author: Craig Lurey <craig@keeperdemo.io>
Date: Fri Jan 17 20:18:19 2025 -0800
Test commit with SSH signing
セットアップが完了しました。
最終更新