15.2. 違反の詳細の表示
Violations ビューで違反を選択すると、違反に関する詳細情報が含まれるウィンドウが開きます。複数のタブにグループ化された詳細情報が表示されます。
15.2.1. 違反タブ リンクのコピーリンクがクリップボードにコピーされました!
Violation Details パネルの Violation タブには、ポリシーにどのように違反したかの説明が表示されます。ポリシーがデプロイフェーズ属性を対象としている場合は、違反名など、ポリシーに違反した特定の値を表示できます。ポリシーが実行時アクティビティーを対象としている場合は、引数やポリシーを作成した祖先プロセスなど、ポリシーに違反したプロセスに関する詳細情報を表示できます。
15.2.2. デプロイメントタブ リンクのコピーリンクがクリップボードにコピーされました!
Details パネルの Deployment タブには、違反が適用されるデプロイメントの詳細が表示されます。
概要セクション
Deployment overview セクションには、以下の情報が一覧表示されます。
- デプロイメント ID: デプロイメントの英数字 ID。
- Deployment name: デプロイメントの名前。
- Deployment type: デプロイメントのタイプ。
- Cluster: コンテナーがデプロイされているクラスターの名前。
- Namespace: デプロイされたクラスターの一意の識別子。
- Replicas: レプリケートされたデプロイメントの数。
- Created: デプロイメントが作成された日時。
- Updated: デプロイメントが更新された日時。
- ラベル: 選択したデプロイメントに適用されるラベル。
- アノテーション: 選択したデプロイメントに適用されるアノテーション。
- サービスアカウント: 選択したデプロイメントのサービスアカウントの名前。
コンテナー設定セクション
Container configuration セクションには、以下の情報がリストされています。
コンテナー: コンテナーごとに、以下の情報を提供します。
- イメージ名: 選択したデプロイメントのイメージの名前。名前をクリックすると、イメージに関する詳細情報が表示されます。
リソース: このセクションでは、次のフィールドの情報を提供します。
- CPU 要求 (コア): コンテナーにより要求されるコアの数。
- CPU 制限 (コア) : コンテナーが要求できるコアの最大数。
- メモリー要求 (MB): コンテナーによって要求されるメモリーサイズ。
- メモリー制限 (MB) : コンテナーが要求できる最大メモリー。
- ボリューム: コンテナーにマウントされているボリューム (存在する場合)。
シークレット: 選択したデプロイメントに関連付けられているシークレット。シークレットごとに、次のフィールドの情報を提供します。
- 名前: シークレットの名前。
- コンテナーパス: シークレットが保存される場所。
- 名前: サービスがマウントされる場所の名前。
- ソース: データソースパス。
- 宛先: データが保存されるパス。
- タイプ: ボリュームのタイプ。
ポート設定セクション
Port configuration セクションには、次のフィールドを含む、デプロイメント内のポートに関する情報が表示されます。
ports: デプロイメントによって公開されるすべてのポート、およびこのデプロイメントとポートに関連付けられたすべての Kubernetes サービス (存在する場合)。ポートごとに、次のフィールドがリストされます。
- containerPort: デプロイメントによって公開されるポート番号。
- protocol: ポートで使用されるプロトコル (TCP や UDP など)。
- exposure: ロードバランサーやノードポートなど、サービスの公開方法。
ExposureInfo: このセクションでは、次のフィールドの情報を提供します。
- level: サービスが内部でポートを公開するか、外部に公開するかどうかを示します。
- serviceName : Kubernetes サービスの名前。
- serviceID: RHACS に保存されている Kubernetes サービスの ID。
- serviceClusterIp: クラスター内 の別のデプロイメントまたはサービスがこのサービスにアクセスするために使用できる IP アドレス。これは外部 IP アドレスではありません。
- servicePort: サービスによって使用されるポート。
- nodePort: 外部トラフィックがノードに入ってくるノード上のポート。
- externalIps: クラスターの外部からサービスに外部アクセスするために使用できる IP アドレス (存在する場合)。このフィールドは内部サービスでは利用できません。
セキュリティーコンテキストセクション
Security context セクションには、コンテナーが特権コンテナーとして実行されているかどうかがリストされます。
特権:
-
特権がある 場合は
true
。 -
特権がない 場合は
false
。
-
特権がある 場合は
ネットワークポリシーセクション
Network policy セクションには、namespace と、違反を含む namespce 内のすべてのネットワークポリシーがリストされます。ネットワークポリシー名をクリックして、ネットワークポリシーの完全な YAML ファイルを表示します。
15.2.3. ポリシータブ リンクのコピーリンクがクリップボードにコピーされました!
Details パネルの Policy タブには、違反の原因となったポリシーの詳細が表示されます。
ポリシーの概要セクション
Policy overview セクションには、次の情報が一覧表示されます。
- Severity: 必要な注意の量に関するポリシーのランク付け (critical、high、medium、または low)。
-
Categories: ポリシーのポリシーカテゴリー。ポリシーカテゴリーは、Policy categories タブの Platform Configuration
Policy Management にリストされます。 - Type: ポリシーがユーザー生成 (ユーザーによって作成されたポリシー) であるか、システムポリシー (デフォルトで RHACS に組み込まれているポリシー) であるか。
- Description: ポリシーアラートの内容の詳細な説明。
- Rationale: ポリシーの確立の背後にある理由と、それが重要である理由に関する情報。
- Guidance: 違反に対処する方法に関する提案。
- MITRE ATT&CK : このポリシーに適用される MITRE tactics and techniques があるかどうかを示します。
ポリシーの動作
Policy behavior セクションでは、次の情報を提供します。
-
ライフサイクルステージ: ポリシーが属するライフサイクルステージ (
Build
、Deploy
、またはRuntime
)。 Event source: このフィールドは、ライフサイクルステージが
Runtime
の場合にのみ適用されます。次のいずれかです。- Deployment: イベントソースにプロセスおよびネットワークアクティビティー、Pod 実行、Pod ポート転送が含まれる場合、RHACS はポリシー違反をトリガーします。
- Audit logs: イベントソースが Kubernetes 監査ログレコードと一致すると、RHACS はポリシー違反をトリガーします。
Response: 応答は次のいずれかになります。
- Inform: ポリシー違反では、違反リストに違反が生成されます。
- Inform and enforce: 違反が適用されます。
Enforcement: 応答が Inform and enforce に設定されている場合、次のステージに設定されている適用タイプがリストされます。
- Build: イメージがポリシーの基準と一致すると、RHACS は継続的インテグレーション (CI) ビルドに失敗します。
- Deploy: RHACS は、ポリシーの条件に一致するデプロイメントの作成をブロックします。アドミッションコントローラーが適用されているクラスターでは、Kubernetes または OpenShift Container Platform サーバーがすべての非準拠のデプロイメントをブロックします。他のクラスターでは、RHACS は準拠していないデプロイメントを編集して、Pod がスケジュールされないようにします。
- Runtime: Pod 内のイベントがポリシーの基準に一致すると、RHACS はすべての Pod を削除します。
ポリシー条件セクション
Policy criteria セクションには、ポリシーのポリシー条件が一覧表示されます。