SSH キーでコミットに署名する
署名済みコミットの制限事項
現時点では、SSH キーを使用して検証できるのは、CLI でプッシュされたコミットだけです。
SSH キーを使用すると、自分で生成した SSH キーでコミットに署名できます。詳細については、Git リファレンス ドキュメントで「user.Signingkey
」をご確認ください。Bitbucket での認証にすでに SSH キーを使用している場合は、同じキーを使用してコミットに署名できます。アカウントに追加できる署名キーの数に制限はありません。
SSH 署名の検証は Git 2.34 以降で利用可能です。Git のバージョンをアップデートするには、Git の Web サイトを参照してください。
既存の SSH キーの確認
SSH キーをすでに持っているかどうかが不明な場合、既存の SSH キーをローカルで確認できます。
既存の SSH キーがあるかどうかを確認するには、次の手順に従います。
ターミナルで次のコマンドを使用して、自身がアクセス権を持つ SSH キーの一覧を表示します。
ls -al ~/.ssh
出力をチェックして SSH キーのペアがあるかどうかを確認します。
新しい SSH キーを生成して追加する
コミットに署名するための新しい SSH キーを生成して追加するには、使用しているオペレーティング システムに応じた手順に従ってください。
macOS: macOS で個人用 SSH キーをセットアップする | Bitbucket Cloud | アトラシアン サポート
Windows: Windows で個人用 SSH キーをセットアップする | Bitbucket Cloud | アトラシアン サポート
Linux: Linux で個人用 SSH キーをセットアップする | Bitbucket Cloud | アトラシアン サポート
SSH キーでコミットに署名する
SSH キーでコミットに署名するには、ターミナル (CLI) を使って以下の手順に従ってください。
キーの形式について Git に指示します。
git config --global gpg.format ssh
コミットの署名にどのキーを使うかを Git に指示します。これを行うには、下の例の「~/.ssh/id_rsa.pub」を自分の公開キーに置き換えます。
git config --global user.signingkey ~/.ssh/id_rsa.pub
ローカル ブランチに変更をコミットするときは、次のように
git commit
コマンドに-S
フラグを追加します。git commit -S -m "your commit message"
SSH キーのパスフレーズを入力します。
コミットが署名されたことを確認します。
git log --show-signature -1
注意:
~/.ssh/
ディレクトリにallowed_signers
ファイルを設定する必要があります。詳細については、Git ドキュメントで「allowedSignersFile
」をご確認ください。必ず Bitbucket アカウントに関連付けられているメール アドレスを使用してください。下の例をご参照ください。echo "bitbucket@example.com $(cat ~/.ssh/id_rsa.pub)" > ~/.ssh/allowed_signers git config --global gpg.ssh.allowedSignersFile ~/.ssh/allowed_signers
必要に応じて、ssh-agent を再実行することを検討してください。
ssh-add ~/.ssh/id_rsa.pub eval $(ssh-agent)
署名検証ステータス
ステータス | 結果 |
---|---|
検証済み |
|
未認証 ⚠️ |
|
署名なし |
|
この内容はお役に立ちましたか?