Anthos のアプリケーション セキュリティのモニタリング

Google Cloud には、すべてのレベルに組み込まれた強力なセキュリティ機能が備わっています。これらの機能は個別に動作し、連携することによってプラットフォームとアプリケーションのセキュリティの両方を含むセキュリティの問題からユーザーを保護します。しかし、このような詳細な防御のため、特定のアプリケーションにとってメリットのある機能を選択する、またはランタイムでのセキュリティ ポリシーの動作を評価することが必ずしも容易ではありません。これを支援するため、Anthos Security Dashboard は、アプリケーションの現在のセキュリティ機能を一目で確認できるビューとともに、セキュリティ構成またはワークロードを変更してセキュリティ対策を強化することが可能な対象箇所を確認できる、より詳細なポリシー監査ビューを備えています。

このドキュメントでは、プラットフォームとアプリケーション オペレータに向けた、Anthos アプリケーション・セキュリティ モニタリングの概要を説明します。各セキュリティ機能とそのモニタリングの詳細については、次のステップの機能ドキュメントのリンクをご覧ください。

現在、Anthos セキュリティ ダッシュボードは Google Cloud 上のクラスタのみをモニタリングしています。

アプリケーション・セキュリティの概要を表示する

Cloud Console で Anthos セキュリティ ダッシュボードを表示するには:

デフォルトでは、[ポリシーの概要] タブが表示され、プロジェクト内の Anthos アプリケーション・セキュリティ機能のステータスが確認できます。これには、詳細を確認して機能を有効にするためのリンクが含まれます。機能は [アクセス制御] と [認証] の 2 つの見出しの下に表示されます。

ポリシーの概要ビューのスクリーンショット

アクセス制御

このセクションでは、選択した Anthos 認可機能のステータスを確認できます。こうしたダッシュボードで次の状況を確認できます。

  • Binary Authorization。信頼できるイメージのみがクラスタにデプロイされるようにできます。
  • Kubernetes ネットワーク ポリシー。相互通信と他のネットワーク エンドポイントとの通信を許可する Pod を指定できます。
  • Anthos Service Mesh のサービスのアクセス制御。サービス アカウントとリクエストのコンテキストに基づいて、メッシュ サービスの詳細なアクセス制御を構成できます。

プロジェクトで有効になっていない機能については、クリックして有効にする(または有効にする方法を確認する)ことができます。

有効な機能については、機能の現在のステータスを確認でき、クリックするとアクセス制御ポリシーに基づいて拒否されたアクションやその他の興味深いイベントなど、選択した期間中の詳細情報が表示されます。たとえば、このプロジェクトでは過去 1 時間に Binary Authorization ポリシーの結果、1 つのクラスタで 3 つのデプロイがブロックされています。

Binary Authorization セキュリティの詳細のスクリーンショット

認証

このセクションでは、Anthos 認証機能のステータスを確認できます。現在、このビューには、Anthos Service Mesh を使用している各クラスタで相互 TLS(mTLS)を適用するポリシーを作成しているかどうかを示します。mTLS は、2 つのサービス間の双方向のトラフィックの安全性と信頼性を保証するセキュリティ プロトコルです。

これは、サービス メッシュに mTLS ポリシーが含まれているかどうかのみを示しています。ポリシーがトラフィックを実際に保護しているかどうかや、実行時にメッシュ内で暗号化されていないトラフィックが許可されるかどうかを確認するには、次のセクションで説明するように、詳細な [ポリシー監査] ビューにアクセスしてください。

アプリケーション・セキュリティを監査する

監査ビューでは、現在のアプリケーション セキュリティ体制について、クラスタごとにより詳しいランタイム評価を確認できます。監査ビューに切り替えるには:

  1. [ポリシー監査] タブを選択します。
  2. モニタリングするクラスタと(必要に応じて)名前空間をプルダウンから選択します。

概要ビューと同様に、すべてのモニタリング対象セキュリティ機能の現在のステータスを確認できます。mTLS の場合、現在、このクラスタのサービス メッシュで、暗号化されていないトラフィックがポリシーで許可されているかどうかも確認できます。これは、サービスが mTLS と平文の両方のトラフィックを受信できるようにする permissive モードの任意の場所で mTLS を有効にした場合に発生する可能性があります。これは、厳格な mTLS に移行する間に予期しないサービスの停止を防ぐのに役立ちますが、メッシュ全体でエンドツーエンドの暗号化を行う場合は更新する必要があります。

更新を行うと、[ワークロード] リストでは、セキュリティ機能がワークロード レベルでどのように機能しているかを確認できます。ワークロードごとに、以下の内容を表示できます。

  • Kubernetes ネットワーク ポリシーが適用されている場合
  • ワークロードに適用される Anthos Service Mesh サービスのアクセス制御ポリシー
  • ワークロードに適用される Anthos Service Mesh mTLS ポリシー - [制約なし](ワークロードに適用される明示的なポリシーをまだ作成していない場合のデフォルト)、[無効]、または [厳格]

ワークロードのセキュリティの詳細を表示する

監査ビューの [ワークロード] リストで個々のワークロードを選択すると、そのセキュリティの詳細がワークロード ビューに表示されます。ワークロードごとに、次の情報を確認できます。

  • ワークロードに適用される各アプリケーション セキュリティ機能の特定のポリシー定義を表示するリンク(該当する場合)。

ネットワーク ポリシーへのリンクのスクリーンショット

  • 名前、クラスタ、関連サービスなどの一般的なワークロードの詳細。
  • ポリシーによってリクエストが拒否されたかどうかを含む、このワークロードとの間のサービス リクエスト。リクエストが拒否された場合は、Cloud Logging で関連ログの詳細を表示できます。これにより、特定の拒否についてのトラブルシューティングを行い、リクエストに関する有用な情報を確認できます。

ワークロードとの間のサービス リクエストのスクリーンショット

  • クラスタで Dataplane V2 ネットワーク ポリシー ロギングが有効になっている場合、このワークロードとの間のネットワーク ポリシー リクエスト。ネットワーク ポリシー情報を表示する方法と、それがワークロードに与える影響を理解する方法については、次のセクションで詳しく説明します。
  • このワークロードによって管理される実行中の Pod。

Dataplane V2 によるワークロード接続を表示する

ワークロードを含むクラスタで Dataplane V2 が有効になっている場合、[ネットワーク ポリシー リクエスト] セクションがワークロード ビューの一部として表示されます。許可および拒否された接続をログに記録するようにネットワーク ポリシー ロギングが構成されている場合は、次の例のように、ワークロードの送受信トラフィックも表示されます。

ワークロードとの間のネットワーク ポリシー リクエストのスクリーンショット

この表には、Dataplane V2 のネットワーク ポリシーのログに記録される接続に関する追加情報も含まれています。特定のワークロードのこの情報を確認するには、次の手順に従います。

  1. 対象のワークロードのテーブル行で、[その他の操作] メニュー をクリックします。
  2. メニューから、表示する追加情報を選択します。
    • [GKE で表示] を選択して GKE UI に移動し、ワークロードの詳細を確認します。
    • [拒否ログを表示] を選択し、関連するログエントリにフィルタリングして Cloud Logging に移動します。
    • [ネットワーク ポリシー接続を表示] を選択すると、接続のそれぞれの方向(下りと上り)で観測されたセキュリティ体制を示す接続図が表示されます。図の例を以下に示します。

ネットワーク ポリシー接続のスクリーンショット

次のステップ