8.3. 秘密鍵と Rekor を使用した sigstore 署名によるコンテナーイメージの署名


イメージの完全性を確保し、ソフトウェアサプライチェーンの来歴を認証するために、Red Hat Enterprise Linux (RHEL) 上で、sigstore と秘密鍵、および Rekor を使用してコンテナーイメージに署名できます。このプロセスには、鍵ペアの生成、秘密鍵によるイメージの署名、および透明性ログに Rekor を使用するようにシステムを設定することが含まれます。

前提条件

  • container-tools メタパッケージがインストールされている。

手順

  1. sigstore の公開鍵または秘密鍵のペアを生成します。

    $ skopeo generate-sigstore-key --output-prefix myKey.private

    公開鍵と秘密鍵 myKey.pubmyKey.private が生成されます。

  2. 以下を /etc/containers/registries.conf.d/default.yaml ファイルに追加します。

    docker:
        <registry>:
            use-sigstore-attachments: true

    use-sigstore-attachments オプションを設定することで、Podman と Skopeo はコンテナーの sigstore 署名をイメージと共に読み書きし、署名されたイメージと同じリポジトリーに保存できます。

    注記

    /etc/containers/registries.d/ ディレクトリー内の任意の YAML ファイルのレジストリーまたはリポジトリー設定セクションを編集できます。単一のスコープ (default-docker、registry、または namespace) は、/etc/containers/registries.d/ ディレクトリー内の 1 つのファイルにのみ存在できます。/etc/containers/registries.d/default.yaml ファイルでシステム全体のレジストリー設定を編集することもできます。すべての YAML ファイルが読み込まれ、ファイル名は任意であることに注意してください。

  3. カレントディレクトリーの Containerfile を使用して、コンテナーイメージをビルドします。

    $ podman build -t <registry>/<namespace>/<image>
  4. /etc/containers/registries.d/file.yml ファイルを作成します。

    privateKeyFile: "/home/user/sigstore/myKey.private"
    privateKeyPassphraseFile: "/mnt/user/sigstore-myKey.private-passphrase"
    rekorURL: "https://<your-rekor-server>"

    file.yml は、sigstore 署名の作成に必要なオプションを保存するために使用される sigstore 署名パラメーター YAML ファイルです。

  5. イメージに署名し、レジストリーにプッシュします。

    $ podman push --sign-by-sigstore=file.yml <registry>/<namespace>/<image>

    あるいは、同様の --sign-by-sigstore オプションを指定して skopeo copy コマンドを使用して、既存のイメージをコンテナーレジストリー間で移動しながら署名することもできます。

    警告

    パブリックサーバーへの送信には、公開鍵に関するデータと署名に関するメタデータが含まれる点に注意してください。

検証

  • イメージをプルします。

    $ podman pull <registry>/<namespace>/<image>

    先ほど設定した署名の存在を強制するには、podman pull コマンドを実行する必要があります。設定済みのレジストリーから、署名されていないイメージ、または誤ったキーで署名されたイメージを取得しようとすると、コマンドは失敗します。

    詳細は、システム上の podman-push(1)podman-build(1)、および container-registries.d の man ページを参照してください。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

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

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

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

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

Legal Notice

Theme

© 2026 Red Hat
トップに戻る