2.2. コマンドラインインターフェイスから Gitsign を使用したコミットの署名および検証


gitsign ツールを使用すると、Red Hat の Trusted Artifact Signer (RHTAS) サービスを使用して、Git リポジトリーのコミットに署名し、検証することができます。

前提条件

  • Red Hat OpenShift Container Platform バージョン 4.13 以降にインストールされた RHTAS。
  • OpenShift Web コンソールへのアクセス。
  • oc および git バイナリーがインストールされたワークステーション。
  • OpenShift クラスターから cosign バイナリーを ダウンロード した。

    • cosign バージョン 2.2 以降を使用する必要があります。

手順

  1. OpenShift クラスターからワークステーションに gitsign バイナリーをダウンロードします。

    1. OpenShift Web コンソールにログインします。ホームページから、? をクリックします。アイコンをクリックして、Command line tools をクリックし、gitsign ダウンロードセクションに移動して、お使いのプラットフォームのリンクをクリックします。
    2. ワークステーションでターミナルを開き、.gz ファイルを展開して、実行ビットを設定します。

      $ gunzip gitsign-amd64.gz
      $ chmod +x gitsign-amd64

    3. バイナリーを $PATH 環境内の場所に移動し、名前を変更します。

      $ sudo mv gitsign-amd64 /usr/local/bin/gitsign

  2. OpenShift クラスターにログインします。

    構文

    oc login --token=TOKEN --server=SERVER_URL_AND_PORT

    $ oc login --token=sha256~ZvFDBvoIYAbVECixS4-WmkN4RfnNd8Neh3y1WuiFPXC --server=https://example.com:6443

    注記

    OpenShift Web コンソールからコマンドラインで使用するログイントークンと URL を確認できます。OpenShift Web コンソールにログインします。ユーザー名をクリックし、Copy login command をクリックします。入力を求められた場合はユーザー名とパスワードをもう一度入力し、Display Token をクリックしてコマンドを表示します。

  3. RHTAS プロジェクトに切り替えます。

    構文

    oc project PROJECT_NAME

    $ oc project trusted-artifact-signer

    注記

    RHTAS インストールのプロジェクト名を使用します。

  4. コミットの署名と検証を行うためにシェル環境を設定します。

    $ export TUF_URL=$(oc get tuf -o jsonpath='{.items[0].status.url}' -n trusted-artifact-signer)
    $ export OIDC_ISSUER_URL=https://$(oc get route keycloak -n keycloak-system | tail -n 1 | awk '{print $2}')/auth/realms/trusted-artifact-signer
    $ export COSIGN_FULCIO_URL=$(oc get fulcio -o jsonpath='{.items[0].status.url}' -n trusted-artifact-signer)
    $ export COSIGN_REKOR_URL=$(oc get rekor -o jsonpath='{.items[0].status.url}' -n trusted-artifact-signer)
    $ export COSIGN_MIRROR=$TUF_URL
    $ export COSIGN_ROOT=$TUF_URL/root.json
    $ export COSIGN_OIDC_CLIENT_ID="trusted-artifact-signer"
    $ export COSIGN_OIDC_ISSUER=$OIDC_ISSUER_URL
    $ export COSIGN_CERTIFICATE_OIDC_ISSUER=$OIDC_ISSUER_URL
    $ export COSIGN_YES="true"
    $ export SIGSTORE_FULCIO_URL=$COSIGN_FULCIO_URL
    $ export SIGSTORE_OIDC_ISSUER=$COSIGN_OIDC_ISSUER
    $ export SIGSTORE_REKOR_URL=$COSIGN_REKOR_URL
    $ export REKOR_REKOR_SERVER=$COSIGN_REKOR_URL

  5. RHTAS サービスを使用してコミットに署名するようにローカルリポジトリー設定を指定します。

    $ git config --local commit.gpgsign true
    $ git config --local tag.gpgsign true
    $ git config --local gpg.x509.program gitsign
    $ git config --local gpg.format x509
    $ git config --local gitsign.fulcio $SIGSTORE_FULCIO_URL
    $ git config --local gitsign.rekor $SIGSTORE_REKOR_URL
    $ git config --local gitsign.issuer $SIGSTORE_OIDC_ISSUER
    $ git config --local gitsign.clientID trusted-artifact-signer

  6. ローカルリポジトリーにコミットを作成します。

    $ git commit --allow-empty -S -m “Test of a signed commit”

    Web ブラウザーが開いて、メールアドレスでコミットに署名できます。

  7. The Update Framework (TUF) システムを初期化します。

    $ cosign initialize

  8. コミットを確認します。

    構文

    gitsign verify --certificate-identity=SIGNING_EMAIL --certificate-oidc-issuer=$SIGSTORE_OIDC_ISSUER HEAD

    $ gitsign verify --certificate-identity=jdoe@redhat.com --certificate-oidc-issuer=$SIGSTORE_OIDC_ISSUER HEAD

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.