Google Cloud セキュリティ:組織ポリシーを効率的に管理するには、ポリシー アナライザを活用する

Google Cloud セキュリティ:組織ポリシーを効率的に管理するには、ポリシー アナライザを活用する

Google Cloudのポリシーアナライザの機能と使用方法、特に組織ポリシーの分析について解説し、実際のコマンド例を用いて具体的な活用方法を紹介しています。
Clock Icon2024.10.29

ポリシー アナライザとは

ポリシーアナライザとは、主に以下3つのポリシーについて分析を行なってくれるサービスになります。

  • 組織ポリシー
  • IAMポリシー
  • 最近のアクティビティの分析

IAMポリシーの分析

IAMポリシーの分析であれば、許可ポリシーに基づいて、どのプリンシパル(ユーザー、サービス アカウントなど)がどのGoogle Cloud リソースに対して、どのようなアクセス権を付与されているかを調べることができます。

Compute Engine VMやIAMサービスアカウントなどの各リソースに対する、ユーザーやグループのアクセス権限と、特定条件下でのアクセス可能性の確認ができます。

IAMのポリシーアナライザは過去に解説しているので、以下を参考にしてみてください。
https://dev.classmethod.jp/articles/policy-analyzer-iam-access/

組織ポリシーの分析

組織ポリシーの分析であれば、どのリソースどの組織のポリシーの対象となるかを調べることができます。
プロジェクト、フォルダ、組織レベルでの「外部IPアドレス使用制限」「リソース作成制限」などの様々な組織ポリシーの適用状況の確認ができます。

本記事では、主に組織ポリシーのポリシーアナライザについて解説していきます。

組織ポリシーとは

まずは、Google Cloudの組織ポリシーについて簡単におさらいしておきましょう。

組織ポリシーとは、組織、フォルダ、プロジェクトレベルで一元管理的な制約事項を定める時に活用できるリソースの管理サービスです。
例えば、組織全体でGCE(VM)への外部IP付与を禁止し、セキュリティリスクを軽減する目的で使用したりできます
スクリーンショット 2024-10-29 9.35.24

詳しくは、過去にも解説しているので、以下のブログをご参照ください。
https://dev.classmethod.jp/articles/organization-policy-setting-forcloud-run-egress/

組織ポリシーのポリシーアナライザ

ここからは実際のGoogle Cloud コンソールにてデモを行なって参ります。

前提準備

  • APIの有効化
    Enable the Cloud Asset API を有効化する。
  • 権限の確認
    クラウド アセット閲覧者(roles/cloudasset.viewer):分析を行うため
    組織のポリシー閲覧者(roles/orgpolicy.policyViewer):カスタム制約を表示するため
  • 注意点
    組織ごとに1日あたり20件を超えるポリシー分析クエリを実行する場合は、SCC Premiumが必要なため、ご注意ください。

※ 次に紹介するコマンド内の、プロジェクトIDなどは全てブログ用に書き換えて記載しています

コマンドで分析

今回はCloud Shell エディタでコマンドを使用して、組織ポリシーの確認を行います。
組織ポリシーの制約が組織内でどのように適用されるかを分析するにはgcloud asset analyze-org-policiesコマンドを使用します。

【例】

gcloud asset analyze-org-policies \
    --constraint=CONSTRAINT_NAME  \
    --scope=organizations/ORGANIZATION_ID \
    --limit=LIMIT_POLICIES \
    --filter=FILTER_QUERY

例のコマンドに当てはめて、外部IP付与禁止の制約が自分のプロジェクトに適応されているかを確認していきましょう。

【実際のコマンド】

gcloud asset analyze-org-policies \
    --constraint=constraints/compute.vmExternalIpAccess \
    --scope=organizations/9022004938 \
    --limit=1 \
    --filter="consolidated_policy.attached_resource=\"//cloudresourcemanager.googleapis.com/projects/test-delete-project\""

constraint:外部IP付与禁止のポリシーを指定
scope:組織のIDを指定
limit:表示する数を指定(全て表示の場合unlimitedを入力)
filter:特定のプロジェクトに絞り込むためのオプション(test-delete-projectを指定)

結果は以下のように表示されました。organizations/9022004938内に存在するtest-delete-projectプロジェクトにおいて外部IP付与制限denyAllで適応されていることを確認できました。

また、今回は1つのプロジェクトIDに限定しましたが、limitをunlimitedで指定し、filterを" "のように空白にすると全てのプロジェクトが表示されます。

【結果】
スクリーンショット 2024-10-29 11.50.53

まとめ

ポリシー アナライザは、Google Cloudの重要な管理ツールとして、組織ポリシー、IAMポリシー、最近のアクティビティの3つの主要な領域を分析します。

IAMポリシーの分析では、特定のリソースに対するアクセス権限を詳細に確認できる一方、組織ポリシーの分析では、組織全体のリソース管理や制約設定の適用状況を把握できます。

本記事で紹介したgcloudコマンドを使用することで、組織ポリシーの適用状況を効率的に分析し、セキュリティリスクの軽減やリソース管理の最適化に役立てることができます。
ポリシーアナライザを活用することで、組織のクラウド環境をより安全かつ効率的に管理することが可能となります。

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.