とっておきのセキュリティの秘密: 組織のポリシー サービスの力を活用する
Google Cloud Japan Team
※この投稿は米国時間 2022 年 9 月 27 日に、Google Cloud blog に投稿されたものの抄訳です。
クラウド リソースは、意欲的な組織が独自の卓越したデジタル作品(あるいは自分たちのビジネス)の創作にすぐに利用できる広大なキャンバスです。けれどもクラウドを舞台にする画家は、最初の一筆を走らせる前に、額縁について考える必要があります。具体的には、どのような形状にすべきか、素材は何か、クラウド サービスのキャンバスに対する境界としてどのような見栄えになるのかを考慮しなければなりません。Google Cloud の組織のポリシー サービスは、まさにこの額縁です。エンジニアが作業に取り掛かる前に、広範かつ回避不可能な制限をセキュリティ チームが設定するためのさまざまなツールが揃っています。
Google Cloud の組織のポリシー サービスは画期的な機能の一つですが、セキュリティ チームには過小評価されがちです。組織のポリシー サービスでは、ユーザーが実行できる操作に重点を置いて職務分掌を実現するとともに、管理者は特定のリソースに対する制限を設定し、その内容を構成できます。そのため、構成エラーに対しても攻撃に対しても、多層防御を推進できます。管理者は組織のポリシーを使用して、Identity and Access Management(特定のリソースに対してどのユーザーがアクセスできるかを重点に置く)よりも高いレベルでコンプライアンスと適合性を適用できます。
組織のポリシーでは、作業負担を軽減しながら、セキュリティを大規模に強化して、現代のクラウド ユーザーのニーズに応えることができます。Google Cloud の大手のお客様である金融サービス会社の HSBC は、極めて規制の厳しい企業環境全体でクラウド リソースを管理するために、長年にわたって組織のポリシーを利用しています。こちらの動画で説明されているように、HSBC は組織のポリシーを創造的に活用し、15,000 件を超えるサービス アカウントと 40,000 人を超える IT プロフェッショナルを管理しています。同社が 1 年あたりに管理する仮想マシン(VM)は 650 万台です。つまり、1 日あたり 22,500 台の VM を管理していますが、そのうち 24 時間以上存在する VM はわずか 2,500 台にすぎません。
HSBC が他の予防的な制御ではなく組織のポリシーを選んでいるのは、組織のポリシーが Google Cloud のネイティブ サービスであり、リクエストの送信元(Infrastructure-as-Code、互いに連携する Google Cloud サービス、UI を使用するユーザーなど)に関係なく適用できるためです。リソースに対する違反を検出するのは、多くのお客様にとって費用がかかります。また検出が間に合わず、被害を防げないことも珍しくありません。組織のポリシーをデプロイすれば、違反を未然に防ぐことができるため、検出と修正の費用を節約できます。
重要な点として、HSBC のカスタム インストール環境は、組織のポリシーに対する違反を直ちに検出して、担当者が迅速かつ正確にエラー状態を修正する方法をすぐに把握できるように設計されています。組織のポリシーに違反するアクションが行われると、どのポリシーに違反しているかを知らせるエラーコードがリソースのリクエスト元に返されます。また、管理者がモニタリングして詳細なトラブルシューティングを行えるよう、対応するログも生成されます。
組織のポリシーの機能をさらに詳しく示す 2 つのユースケースを次に示します。
データ所在地に関する厳格な要件が適用される地域で事業を行っている組織は、作成されるあらゆるリソース(VM、クラスタ、バケットなど)が特定のクラウド リージョンにデプロイされるように、ロケーションの組織のポリシーを構成して有効化できます。
管理者は、信頼できるワークロードのみが Google Kubernetes Engine(GKE)や Cloud Run にデプロイされるように、開発者がデプロイ プロセスで使用するイメージを、検証されたものだけに制限したい場合があります。その場合、管理者は GKE クラスタ リソースタイプと作成および更新メソッドを対象としたカスタム組織のポリシーを作成して、Binary Authorization が適用されていないクラスタの作成または更新をブロックできます。
仕組み
Google Cloud では、Google Cloud のサービスとリソースに対する操作を制限して管理するために、セキュリティ、信頼性、コンプライアンスなどの重要な分野に関する 80 を超える組織のポリシーを提供しています。組織のポリシーは次の目的に役立ちます。
リソースとサービスのアクセスを組織のドメインにのみ制限する、リソースへの公開アクセスをセキュリティで保護する、サービス アカウント キーの不正使用を阻止する。
グローバルまたはリージョナル DNS の使用を強制し、グローバルまたはリージョン ロード バランシングを適用して、サービスの信頼性と可用性を向上させる。
コンプライアンスの目標を達成できるよう、リソースへのアクセスを許可するサービス、リージョン、時間帯を指定する。
Virtual Private Cloud(VPC)ネットワークをセキュリティで保護し、データが特定の境界を超えないようにすることで、データの引き出しのリスクを低減する。
組織のポリシーと制約について詳しくは、組織のポリシー サービスの制約リストをご覧ください。
特定のコンプライアンスとセキュリティの要件を満たすために、最近導入されたカスタム組織のポリシーを使用して制限を調整することもできます。カスタム組織のポリシーでは、セキュリティ管理者が Common Expression Language(CEL)を使用して独自の制約を作成し、許可または拒否されるリソース構成を定義することができます。新しいポリシーと制約は、数分で作成してデプロイできます。
大きな力には大きな責任が伴うものです。このことを踏まえ、近日中にカスタム組織のポリシーのドライランを導入する予定です。これにより、ユーザーが監査専用モードでポリシーを適用し、本番環境ワークロードをリスクにさらすことなく実際の運用中の動作を観察できます。
使ってみる
組織のポリシーは、初めてでも簡単に設定できます。まず、組織のポリシー管理者が Google Cloud の対象範囲内の組織、フォルダ、プロジェクトで新しい組織のポリシーを有効にします。その後、制約を決定して適用します。この手順は以下のとおりです。
1. 制約を設計します。これは、単一の Google Cloud サービスまたは Google Cloud サービスのグループに固有となる制限です。使用可能な組み込みの制約のリストから選択する場合は、目的の制限と例外を(タグに基づいて)構成します。また、カスタム組織のポリシーを作成することもできます。
ここで重要なのは、対象のリソース階層ノードの子孫が組織のポリシーを継承することです。したがって、組織のポリシーをルート組織ノードに適用すると、組織全体にその組織のポリシーと制限の構成を適用できます。
2. リソースの作成、更新、削除オペレーションを評価し、許可または拒否する組織のポリシーをデプロイします。この作業には、Google Cloud コンソール、gCloud、または API を使用できます。
3. ポリシーに対する違反を検出して対処するために、監査ログと Security Command Center Premium の検出結果をモニタリングします。
組織のポリシーが必要かどうかを判断する
組織のポリシーを利用すると、セキュリティとコンプライアンスを大規模に確保するうえで役立つだけでなく、開発チームの作業効率を高めることもできます。組織のポリシーでは制限を広範に設定できるため、運用オーバーヘッドを増やすことなくコンプライアンスを確保し、ポリシーに対する違反をモニタリングできます。
組織のポリシーについて詳しくは、次のリソースをご確認ください。
組織の作成と管理のページを読み、組織リソースを取得する方法を学ぶ
Google Cloud コンソールを使用して組織のポリシーを作成および管理する方法を確認する
組織のポリシーの制約で実現できるソリューションを検討する
Google Cloud の組織のポリシー プロダクト マネージャーの Vandy Ramadurai が組織のポリシーの全容を説明しているポッドキャストを聴く
- Google Cloud、セキュリティ編集者 Seth Rosenblatt