VPC Service Controlsを使ってGoogle Cloud セキュリティ対策を強化しよう!
- Cloud
- Service Controls
- VPC
- セキュリティ対策
企業システムのクラウド移行が加速する中、Google Cloud (GCP)の利用ユーザーも拡大しています。重要な社内システムを移行するにあたり各企業がGoogle Cloud (GCP)を選択する大きな要因の一つに、高セキュリティがあります。Google Cloud (GCP)には利用者システムを守る強固なセキュリティシステムが備わっているのです。
それではセキュリティサービスはどのように操作し利用するのでしょうか?ここでは、Google Cloud (GCP)セキュリティサービスの中でよく使われるサービスの1つ、VPC Service Controlsについて解説します。
Google Cloud (GCP)のセキュリティ対策をお考えのご担当者の皆様、これからGoogle Cloud (GCP)で社内システム移行を考えられている皆様、BigQuery参考にしてください。
目次
VPC Service Controls とは?
VPC Service Controlsは、Google Cloud (GCP)のセキュリティサービスの1つであり、よく使われるセキュリティサービスの1つです。外部からの不正アクセスからGoogle Cloud (GCP)上に配置した重要データを保管しているBigQueryやCloud Storage、Webサービスなどを防御するためのサービスです。
では、VPC Service Controlsは具体的にどのような機能なのでしょうか?最近では多くのセキュリティ機能がありますが、具体的にどれに該当するのでしょうか?VPC Service Controlsは通信に対しアクセスコントロールすることで外部の不正アクセスからGoogle Cloud (GCP)上の重要リソースを守ります。
以下では、VPC Service Controlsの特徴やできることを4つご紹介します。
ネットワーク上に境界線を作り、アクセスコントロールするFirewall的存在
VPC Service Controlsは、VPC(Virtual Private Cloud)間の通信を制御する、いわばFirewallと同じような役割を果たします。
VPC Service ControlsはVPCにサービス境界(Perimeter)を設定することで、外部からGoogle Cloud (GCP)上のデータに対するアクセスをすべてブロックできます。いわばFirewallのゾーン設定、といったイメージですね。その上で、Google Cloud上に設定したVPCと外部、VPC間にアクセスリストを定義し、許可する通信、制限する通信などを設定することで、VPC内の重要リソースに対するアクセスをコントロールします。
例えばGoogle Cloud (GCP)上に配置したBigQueryに対し、特定のユーザーからのアクセスのみ許可したい場合、VPC Service Controls上で設定することで実現することができます。
複数のパターンで制御可能
Firewallと異なる点は、IPアドレス以外の方法でも制御できる点です。例えばデバイスの種類で制御する「デバイス制御」やリージョン間でポリシー設定する「リージョン制御」、ユーザーIDで制御する「ユーザー制御」などがあり、これらを組み合わせて制御することも可能です。
また、ユーザーIDを統合管理するIdentity and Access management(IAM)と組み合わせることでより強固なセキュリティ管理を実現することが可能になります。
クラウド全体のアクセスコントロールを集中管理
何より、クラウド内のアクセスコントロールを一元管理できるのがこのシステムのポイントです。本来であればVPC毎で設定しなければならないところですが、VPC Service Controlsは1ヵ所ですべてのVPCの制御ができるのです。また、2021年7月現在では組織レベル、フォルダレベルでのポリシー設定も可能となりましたので、さらにシンプルかつ便利にアクセス管理ができるようになりました。
他のサービスとセットであれば無料で利用できる
これだけ便利な機能ですので、その利用料金が気になる方も多いのではないでしょうか?実はVPC Service ControlsはVPCを利用する場合、無料で利用できます。例えばBigQueryやCloud StorageといったComputing Serviceを利用する場合必ずVPCを設定する為、サービス利用する場合すべて無料で利用できるということです。
スタンダードな機能とはいえ、必要不可欠なアクセスコントロール機能ですので、無料で利用できるのは非常にありがたいことですね。
VPC Service Controlsの利用シーン
それではVPC Service Controlsがどのようなケースで利用できるか?知りたい方もいらっしゃるのではないでしょうか?ここではいくつかの利用例について紹介します。
データストレージへのアクセス制限
1つ目はGoogle Cloud (GCP)上に配置したデータストレージへのアクセス制限です。社内オンプレミス環境に設置しているファイルサーバーやデータベースをGoogle Cloud (GCP)に移行する場合、そのアクセス元は社内ユーザーのみに限定する必要がありますが、この制御に利用できます。
VPC上にデータストレージ・BigQueryを配置、データ移行をしたのち、VPC Service Controlsでアクセス元を制限します。この際、アクセス元のアドレスを社内IPアドレスで限定する形でもよいですし、テレワークを意識するのであれば、IAMを使いデバイス単位やユーザーIDでコントロールする形でもよいでしょう。
特定ユーザーのみでのアクセスコントロール
2つ目は社外の特定ユーザーのみにアクセス権を与える方法です。VPC上にストレージを配置し、社内外の特定のプロジェクトメンバーだけアクセスできるようにする場合において利用します。
IAMで対象ユーザーを組織として設定し、VPC Service ControlsでIAM上の対象組織のみアクセス許可する設定にすることで実現可能です。
別プロジェクト同士でのデータ授受
3つ目は別プロジェクト間でのデータ授受についてです。2つのプロジェクトがあり、双方でのデータ授受は禁止としているが、一部データのみ授受できる設定をしたい場合に利用できます。
2つのプロジェクトのVPC間にVPC Service Controlsで双方の特定サーバー同士の通信のみ許可させるのです。VPC Service Controlsは単一VPCだけでなく、VPC間でのアクセス制御にも利用できるのです。
VPC Service Controlsを使ってみよう!!
ストレージ等のサービスを利用すれば無料で利用できるVPC Service Controls、皆さん使ってみたくなってきたのではないでしょうか?同時に、どのように設定し利用すればよいのか、知りたい方もいらっしゃるのではないでしょうか?
そこで、ここでは簡単な事例を用いてVPC Service Controlsの設定、利用方法について解説します。
検証内容
今回はGoogle Cloud (GCP)上に配置した社内データ保管場所(Cloud Storage)に対するアクセスに対し、アクセスコントロール設定する、というシンプルなシナリオを想定します。アクセスするPCは同じVPC内に設定するCompute Engine、およびクラウド外からアクセスするPCを想定します。
下記が今回のシナリオ構成となります。想定シーンとしては、社内のデータストレージをGoogle Cloud (GCP)上に設置、社内PCからGoogle Cloud (GCP)上のデータストレージにアクセスすることを想定しています。
この構成上で、Perimeter設定によりVPC外からのアクセスを遮断した上で、VPC Service Controls設定上で外部PC-Aからのアクセスのみ許可する設定とします。この結果、下記のような動作を実現します。
●PC-A→Cloud Storage:〇(アクセス可)
●PC-B→Cloud Storage:×(アクセス不可)
●Compute Engine→Cloud Storage:〇(アクセス可)
尚、アクセスコントロール手法ですけれども、先にもお話ししたとおり、IAMと連携し、ユーザーIDでコントロールすることも可能ですが、今回はあえてIPアドレスでアクセスコントロールする想定とします。PC-A、PC-Bは共にIAMにより、Cloud Storageそのものへのアクセスは許可されている構成とします。
事前準備
今回の構成では、VPC Service Controls以外にIAM、および、IPアドレスで制御する為、Access Context Managerの2つを利用します。よって、VPC Service Controls以外で下記2つの権限を設定します。
●Access Context Manager 管理者
●Resource Manager 組織閲覧者(IAM設定用)
またGoogle Cloud (GCP)以外に下記を事前に準備します。
●外部アクセス用PC(2台)
●PC~Google Cloud間を接続するネットワーク(インターネット環境)
●Cloud Storage、Compute Engineの構築
●IAMの設定(PC-A、PC-BからCompute Engineに対するアクセスを許可)
また、社内からGoogle Cloud (GCP)にアクセスする場合、社内ネットワークセキュリティによりGoogle Cloud (GCP)へのアクセスが制限されているケースもありえますので、あらかじめ確認の上、通信できるようにしておきましょう。
Access Context Managerの設定
まずAccess Context Managerを設定します。Access Context Managerは、アクセス許可するIPアドレスを設定する、FirewallのAccess Contorol List(ACL)の位置づけとなる設定をします。
Google Cloud (GCP)のメニューから「セキュリティ>Access Context Manager」を選択します。
下記のような設定画面が表示されますので、①~③を設定します。設定後、「アクセスレベルの名前」をコピーし、保管します。
①アクセスレベルのタイトル
アクセスレベルのタイトルを設定します。ユニークに設定できますが、大規模な構成を構築される場合は予め命名ルールなどを決めて設定することをおすすめします。ルールを決めず自由に割当してしまうと、後々どれが何の境界設定か判断できず、名前のダブりや判別ができないなどのトラブルを引き起こす可能性があるため、注意が必要です。
おすすめとしては先に設定したVPC Service Managerの「境界名」、および「プロジェクト名」と紐づけた命名規則を設定する方法です。こうすることでどのプロジェクト向けの設定かわかりやすくなり、管理しやすくなります。
②条件(条件が満たされている場合に返される値)
アクセス対象となるアクセス元のIPアドレスリストを設定します。条件が満たされている場合の値は2種類から選択できます。今回は、設定したIPアドレスを許可する設定であるため、TRUEを選択します。
●TRUE:設定したIPアドレスからのアクセスを許可する
●FALSE:設定したIPアドレス以外からのアクセスを許可する
③条件(IPサブネットワーク)
対象となる送信元のIPアドレスを設定します。記載方法はCIDRブロックで表記します。今回は、PC-AのIPアドレス(192.168.1.1)を設定しますので、この場合は、「192.168.1.1/32」と設定します。これがサブネットで設定する場合は、「192.168.1.0/24」といった形で表記します。
VPC Service Controlsの設定
次にVPC Service Controlsを設定します。VPC Service Controlsでは、VPCにサービス境界(Perimeter)を設定します。
GCPのメニューから「セキュリティ>VPC Service Controls」を選択します。
下記の画面が表示されます。VPC Service Controlsを初めて利用される方は「サービス境界データがありません」と表示されていますので、それを確認した上で、上部中央にある「新しい境界」をクリックします。
下記のような設定画面が表示されますので、①~⑤を設定します。
①境界名
VPC境界設定名を割り当てます。ユニークに名前を設定できますが、大規模な構成を構築される場合は予め命名ルールなどを決めて設定することをおすすめします。ルールを決めず自由に割当してしまうと、後々どれが何の境界設定か判断できず、名前のダブりや判別ができないなどのトラブルを引き起こす可能性があるため、注意が必要です。
おすすめとしては先に設定したAccess Context Managerの「アクセスレベルのタイトル」、および③で設定する「プロジェクト名」と紐づけた命名規則を設定する方法です。こうすることでどのプロジェクト向けの設定かわかりやすくなり、管理しやすくなります。
②境界のタイプ
境界タイプは今回対象とするVPCとどこの間に境界を設定するか?について設定します。設定には2つの種類があります。
●標準境界:1つのプロジェクトに対する境界設定
●境界ブリッジ:2プロジェクトの境界間設定
今回は、1つのプロジェクトに対する境界設定となりますので、「標準境界」を選択します。
保護するプロジェクト
今回作成するルールをどのプロジェクトに適応させるか?選択します。今回は、Cloud Storage、Compute Engineを構築したプロジェクトを選択します。選択肢の中から、対象のプロジェクト名、IDを選択してください。尚、境界ブリッジ構成のケースを想定し複数プロジェクト設定できるようになっていますが、今回は1つだけ設定してください。
保護するサービス
どのサービスを保護するか?選択します。今回は、Cloud Storageだけですので、1つのみ選択します。
尚、それ以外にも下記サービスが選択できます。
●Cloud Key Management Service (KMS) API
●GKE Connect API
●GKE Hub API
●Google Bigtable API
●Google Cloud Data Catalog API
●Google Cloud Dataflow API
●Google Cloud Dataproc API
●Google Cloud Pub/Sub API
●Google Cloud Recommender API
●Google Cloud Spanner API
●Google Cloud Vision API
●Google Container Registry API
●Google Kubernetes Engine API
●Stackdriver Logging API
●Stackdriver Trace API
アクセスレベル
Access Context Managerで設定した許可IPアドレスリストを紐づけます。Access Context Managerで設定したアクセスレベルのタイトルを選択します。
設定後の動作確認
設定が終わったら、PC-A、PC-BからCloud Strageにアクセスしてみましょう。PC-A(192.168.1.1)からのアクセスは出来ますが、PC-B(192.168.1.2)からはアクセスできないはずです。
また、PC-Bからアクセス後、Cloud Strageのコンソール画面にアクセスしてみましょう。「VPC Service Controlsによってアクセスが拒否されました」と表示されています。これによりVPC Service Managerでアクセスコントロールできていることが確認できます。
まとめ:VPC Service Controlsで基本的なアクセス制御を使いこなそう!!
いかがだったでしょうか?VPC Service ControlsはVPC内の重要リソースに対する外部アクセスをコントロールするセキュリティサービスです。いわゆるFirewall機能と同じような機能であり、Google Cloud (GCP)を利用する上では必須機能であり、多くのシーンで利用できます。
今回はIPアドレスによる制御でしたが、これ以外にも「リージョン単位」「デバイス単位」やIAMと連携したID単位での制御も可能であり、これらを利用することでより細かく設定できます。
既にGoogle Cloud(GCP)を利用されている方も、これからGoogle Cloud (GCP)を導入される方も、VPC Service Controlsを利用しセキュリティ対策されてはいかがでしょうか?
弊社トップゲートでは、Google Cloud (GCP) 利用料3%OFFや支払代行手数料無料、請求書払い可能などGoogle Cloud (GCP)をお得に便利に利用できます。さらに専門的な知見を活かし、
- Google Cloud (GCP)支払い代行
- システム構築からアプリケーション開発
- Google Cloud (GCP)運用サポート
- Google Cloud (GCP)に関する技術サポート、コンサルティング
など幅広くあなたのビジネスを加速させるためにサポートをワンストップで対応することが可能です。
Google Workspace(旧G Suite)に関しても、実績に裏付けられた技術力やさまざまな導入支援実績があります。あなたの状況に最適な利用方法の提案から運用のサポートまでのあなたに寄り添ったサポートを実現します!
Google Cloud (GCP)、またはGoogle Workspace(旧G Suite)の導入をご検討をされている方はお気軽にお問い合わせください。
メール登録者数3万件!TOPGATE MAGAZINE大好評配信中!
Google Cloud(GCP)、Google Workspace(旧G Suite) 、TOPGATEの最新情報が満載!