3.5. policy.json ファイルを使用したコンテナー署名の検証


Red Hat Enterprise Linux (RHEL) は、コンテナーイメージの署名を必須とし、検証するように設定できます。これにより、プルするイメージが信頼できるソースからのものであり、改ざんされていないことを確認できます。policy.json ファイルを修正することで、この信頼ポリシーを管理できます。これにより、Podman、Buildah、Skopeo などのツールに対して、有効なコンテナイメージ署名を強制できます。

システム全体の設定を行うには、/etc/containers/policy.json ファイルを変更します。ルートレスユーザーの場合は、これらのルールを $HOME/.config/containers/policy.json ファイルに適用できます。

transportregistry、および namespace によるスコープポリシー

policy.json ファイルは、検証ルールを階層的に構造化し、特定のイメージにどのルールが適用されるかを決定します。以下の要素を使用することで、これらのポリシーの範囲を指定できます。

  • Default: デフォルト配列は、具体的に定義されたどのスコープにもイメージが一致しない場合に適用される、フォールバックポリシーを指定します。
  • Transport: トランスポートオブジェクト内でカスタムポリシーを定義できます。コンテナーレジストリーの場合、docker トランスポートの下でカスタムポリシーを定義できます。
  • Registry および Namespace: transport セクションを使用して、さまざまな組織レベルで信頼ポリシーを設定できます。ポリシーの範囲は、以下のいずれかの方法で設定できます。

    • ポリシーのスコープをレジストリー全体に設定します。たとえば、単一の企業向けに専用化されたレジストリーの場合は、<registry> のように指定します。
    • ポリシーを特定の名前空間またはリポジトリーに絞り込みます。たとえば、パブリックレジストリーの場合は、<registry>/<namespace> のようになります。
署名証明書の指定

レジストリーまたは名前空間のブロック内で署名要件を定義することで、特定のスコープ内にあるイメージに対して、対応する鍵や証明書による検証を義務付けることができます。以下のキーと値のペアを設定できます。

  • type: signedBy: コンテナーツールに有効な署名が必要であることを指示します。
  • keyType: 使用するキーの形式を指定します。たとえば、GPGKeys などです。
  • keyPath: 検証に使用されるローカル公開鍵または証明書ファイルへの絶対パスを指定します。たとえば、testdata/sequoia-key.pgp などです。

デフォルトルールを設定して、すべてを受け入れることもできます。ただし、docker トランスポート内で、特定のスコープ付き名前空間 localhost:5003/simple-sq-signed-centos を制限して、有効な署名を厳密に要求できます。以下に例を示します。

{
  "default": [
    {
      "type": "insecureAcceptAnything"
    }
  ],
  "transports": {
    "docker": {
      "localhost:5003/simple-sq-signed-centos": [
        {
          "type": "signedBy",
          "keyType": "GPGKeys",
          "keyPath": "testdata/sequoia-key.pgp"
        }
      ]
    }
  }
}
注記

設定がアクティブになったら、podman pull <registry>/<namespace>/<image> コマンドを実行する必要があります。Podman は、policy.json ファイルで設定したとおりに、署名の存在を自動的に強制します。設定済みのレジストリーから、署名されていない、または誤ったキーで署名されたイメージをプルしようとすると、コマンドは失敗します。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

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

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

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

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

Legal Notice

Theme

© 2026 Red Hat
トップに戻る