9.11. スキャナーおよびメタデータ
このセクションでは、Red Hat Quay 内のセキュリティースキャン、メタデータの提示、およびアーティファクト関係に関連する設定フィールドを説明します。
これらの設定により、Red Hat Quay を次のように実行できるようにすることで可視性とセキュリティーが強化されます。
- 脆弱性スキャナーと統合して、既知の CVE のコンテナーイメージを評価します。
- レジストリーに保存されているモデルカードを使用して、AI/ML モデルのメタデータをレンダリングします。
- OCI アーティファクト仕様に合わせて、参照元 API を使用してコンテナーアーティファクト間の関係を公開します。
これらの機能を組み合わせることで、ソフトウェアサプライチェーンの透過性が向上し、セキュリティーポリシーを実施し、メタデータ駆動型のワークフローをサポートできるようになります。
9.11.1. Clair セキュリティースキャナー設定フィールド
Red Hat Quay は、Clair セキュリティースキャナー を利用して、コンテナーイメージの脆弱性を検出できます。これらの設定フィールドは、スキャナーを有効にする方法、新しいコンテンツをインデックス化する頻度、使用されるエンドポイント、および通知の処理方法を制御します。
フィールド | 型 | 説明 |
---|---|---|
FEATURE_SECURITY_SCANNER | Boolean |
セキュリティースキャナー。 |
FEATURE_SECURITY_NOTIFICATIONS | Boolean |
セキュリティースキャナーが有効になっている場合、セキュリティー通知を有効にするか、オフにします |
SECURITY_SCANNER_V4_REINDEX_THRESHOLD | String |
このパラメーターは、最終のインデックス作成から状態が変更されたか、以前に失敗したマニフェストのインデックスをもう一度作成するまで待機する最小時間を判断するのに使用します。データは manifestsecuritystatus テーブルの |
SECURITY_SCANNER_V4_ENDPOINT | String |
V4 セキュリティースキャナーのエンドポイント。 |
SECURITY_SCANNER_V4_PSK | String | Clair 用に生成された共有キー (PSK)。 |
SECURITY_SCANNER_ENDPOINT | String |
V2 セキュリティースキャナーのエンドポイント。 |
SECURITY_SCANNER_INDEXING_INTERVAL | Integer |
このパラメーターは、セキュリティースキャナーのインデックス作成の間隔 (秒単位) を決定するために使用されます。インデックスのトリガーが発生すると、Red Hat Quay は、Clair でインデックス化する必要のあるマニフェストに対してそのデータベースをクエリーします。これには、インデックス付けされていないマニフェストや、以前にインデックス付けに失敗したマニフェストが含まれます。 |
FEATURE_SECURITY_SCANNER_NOTIFY_ON_NEW_INDEX | Boolean |
新しいプッシュの脆弱性に関する通知の送信を許可するかどうか。 |
SECURITY_SCANNER_V4_MANIFEST_CLEANUP | Boolean |
Red Hat Quay ガベージコレクターが、他のタグまたはマニフェストによって参照されていないマニフェストを削除するかどうか。 |
NOTIFICATION_MIN_SEVERITY_ON_NEW_INDEX | String |
検出された脆弱性に関する新しい通知の最低セキュリティーレベルを設定します。最初のインデックスの後に大量の通知が作成されるのを回避します。定義されていない場合は、デフォルトで |
SECURITY_SCANNER_V4_INDEX_MAX_LAYER_SIZE | String |
インデックス化に許可される最大レイヤーサイズ。レイヤーサイズが設定済みのサイズを超えると、Red Hat Quay UI は、 |
セキュリティースキャナーの YAML 設定
# ... FEATURE_SECURITY_NOTIFICATIONS: true FEATURE_SECURITY_SCANNER: true FEATURE_SECURITY_SCANNER_NOTIFY_ON_NEW_INDEX: true ... SECURITY_SCANNER_INDEXING_INTERVAL: 30 SECURITY_SCANNER_V4_MANIFEST_CLEANUP: true SECURITY_SCANNER_V4_ENDPOINT: http://quay-server.example.com:8081 SECURITY_SCANNER_V4_PSK: MTU5YzA4Y2ZkNzJoMQ== SERVER_HOSTNAME: quay-server.example.com SECURITY_SCANNER_V4_INDEX_MAX_LAYER_SIZE: 8G # ...
# ...
FEATURE_SECURITY_NOTIFICATIONS: true
FEATURE_SECURITY_SCANNER: true
FEATURE_SECURITY_SCANNER_NOTIFY_ON_NEW_INDEX: true
...
SECURITY_SCANNER_INDEXING_INTERVAL: 30
SECURITY_SCANNER_V4_MANIFEST_CLEANUP: true
SECURITY_SCANNER_V4_ENDPOINT: http://quay-server.example.com:8081
SECURITY_SCANNER_V4_PSK: MTU5YzA4Y2ZkNzJoMQ==
SERVER_HOSTNAME: quay-server.example.com
SECURITY_SCANNER_V4_INDEX_MAX_LAYER_SIZE: 8G
# ...
- 1
- 推奨される最大値は
10G
です。
9.11.1.1. Clair v4 によるインデックスの再作成
Clair v4 がマニフェストをインデックス化する場合は、結果として、決定論的なものである必要があります。たとえば、同じマニフェストが同じインデックスレポートを生成する必要があります。これは、異なるスキャナーを使用するとレポートで返される特定のマニフェストに関連して異なる情報を生成するため、スキャナーが変更されるまで True となります。そのため、Clair v4 はインデックスエンジン (/indexer/api/v1/index_state
) の状態表現を公開し、スキャナー設定が変更されたかどうかを判別します。
Red Hat Quay は、Quay のデータベースの解析時にこれをインデックスレポートに保存し、このインデックス状態を活用します。以前にスキャンされてからこの状態が変更された場合、Red Hat Quay は定期的なインデックスプロセス時にマニフェストの再作成を試行します。
デフォルトでは、このパラメーターは 30 秒に設定されています。インデックス作成のプロセスをより頻繁に実行する場合は、時間を短縮します。たとえば、新規タグをプッシュしてから、30 秒待たずに、UI でセキュリティースキャンの結果を表示する場合などです。また、ユーザーは要求パターンを Clair に制御し、Red Hat Quay データベースで実行されるデータベース操作のパターンをより詳細に制御する必要がある場合にパラメーターを変更することもできます。
9.11.2. モデルカードレンダリング設定フィールド
Red Hat Quay は、機械学習ワークフローで一般的に使用されるモデルカード -a 形式のメタデータドキュメントのレンダリングをサポートしています。これにより、OCI 準拠のイメージ内のモデル関連のコンテンツの可視性と管理が向上します。
フィールド | 型 | 説明 |
---|---|---|
FEATURE_UI_MODELCARD | Boolean |
UI で Model card イメージタブを有効にします。デフォルトは |
UI_MODELCARD_ARTIFACT_TYPE | String | モデルカードアーティファクトタイプを定義します。 |
UI_MODELCARD_ANNOTATION | Object | このオプションフィールドは、OCI イメージに格納されているモデルカードのレイヤーアノテーションを定義します。 |
UI_MODELCARD_LAYER_ANNOTATION | Object | このオプションフィールドは、OCI イメージに格納されているモデルカードのレイヤーアノテーションを定義します。 |
モデルカードの例 YAML
FEATURE_UI_MODELCARD: true UI_MODELCARD_ARTIFACT_TYPE: application/x-mlmodel UI_MODELCARD_ANNOTATION: org.opencontainers.image.description: "Model card metadata" UI_MODELCARD_LAYER_ANNOTATION: org.opencontainers.image.title: README.md
FEATURE_UI_MODELCARD: true
UI_MODELCARD_ARTIFACT_TYPE: application/x-mlmodel
UI_MODELCARD_ANNOTATION:
org.opencontainers.image.description: "Model card metadata"
UI_MODELCARD_LAYER_ANNOTATION:
org.opencontainers.image.title: README.md
- 1
- UI で Model Card イメージタブを有効にします。
- 2
- モデルカードアーティファクトタイプを定義します。この例では、アーティファクトタイプは
application/x-mlmodel
です。 - 3
- オプション: イメージに
artifactType
が定義されていない場合、このフィールドはマニフェストレベルでチェックされます。一致するアノテーションが見つかった場合、システムはUI_MODELCARD_LAYER_ANNOTATION
に一致するアノテーションを持つレイヤーを検索します。 - 4
- オプション: イメージに
artifactType
が定義されており、レイヤーが複数ある場合、このフィールドを使用して、モデルカードを含む特定のレイヤーを検索します。
9.11.3. Open Container Initiative referrers API 設定フィールド
Open Container Initiative (OCI)参照者 API は、参照者の取得と管理を支援することで、コンテナーイメージ管理を改善するのに役立ちます。
関連情報
フィールド | 型 | 説明 |
---|---|---|
FEATURE_REFERRERS_API | Boolean | OCI 1.1 のリファラー API を有効にします。 |
OCI 参照者の有効化 YAML の例
# ... FEATURE_REFERRERS_API: True # ...
# ...
FEATURE_REFERRERS_API: True
# ...