Security Command Centerの設計方針
Security Command Centerを使ってみて見えてきた設計方針のまとめ
Table of contents
author: kuribo-
はじめに
アプリチームからインフラチームに異動になりました。インフラチームのkuribo-です。
今回はSecurity Command Centerについてです。
あまりベストプラクティスっぽいものが出ていないので設定方針などについて簡単にまとめてみようと思いました。
意外と柔軟に設定できるということもわかったのでまとめてみます。
Security Command Center とは
Security Command Center(以下、SCC)はGoogle Cloudの組織やプロジェクト(あるいはGWSの設定も含む)を自動的にスキャンして、Googleの決めたルールに基づいて構成ミスなどを自動検知して一覧化するサービスです。
Googleのドキュメントは以下です。
https://cloud.google.com/security-command-center/docs/concepts-security-command-center-overview?hl=ja
ざっくり一言で言うと、Googleが考えるベストプラクティスに則って組織やプロジェクト(あるいはGWSの設定)の最適な設定になるように指導してくれるサービスです。
(あくまで指導です。構成が誤ってる場合にアラートが出るだけで自動的に直してくれるわけではありません)
SCCは、以前は組織に設定しかできずプロジェクト単位では設定できなかったのですが、現在はプロジェクト単位で設定できるようになりました。
ただしプロジェクト単位で設定する場合も組織は必要です。
プランとしては、無償で使えるスタンダードティアと有償のプレミアムティアの2種類の料金体系があり、使える機能に差があります。
また、支払い方法も従量課金とサブスクリプションの二種類があり、Console画面から設定すると従量課金になります。
(サブスクリプションはGoogleの営業担当者に連絡して設定することになるようです。)
今回は従量課金をベースに記載していきます。
機能の有効化
SCCの機能はConsole画面の「セキュリティ > 概要」から有効化できます。
有効化する際にティアの選択や有効化する機能を選択しますが、設定後に変更も可能なのでひとまず使いたいように設定してみましょう。
尚、組織でティアを選択したり機能を有効化した場合デフォルトではプロジェクトにもその設定が継承されますが、継承先のプロジェクトでそれぞれ再設定が可能です。
※組織をプレミアムティアにしても、プロジェクトでスタンダードティアにダウングレードも可能ですし、その逆も可能です。
※組織で有効化した機能をプロジェクトで無効化も可能ですし、その逆も可能です。
ティアによる機能の違い
Googleのドキュメントを見ても色々なページに違いが書いてありわかりづらいです。
SCCを大きく分けると以下のような機能があります。
- Security Health Analytics
- Web Security Scanner
- Cloud Data Loss Prevention
- Google Cloud Armor
- Anomaly Detection
- Event Threat Detection
- Container Threat Detection
- Rapid Vulnerability Detection
- VM Manager
- Secured Landing Zoneサービス
- Virtual Machine Threat Detection
- Sensitive Actions Service
- iam_recommender
上記の1つ1つの機能についてはGoogleのドキュメントや、色々なブログ記事などにも書いてありますので今回は割愛します。
スタンダードティアとプレミアムティアで使える機能が異なってきます。
スタンダードティアはプレミアムティアの機能で一部の機能が使えるものです。
例えば、Anomaly Detectionは同じように利用できますが、Security Health AnalyticsやWeb Security Scannerは一部項目のみが検出対象になります。
これらの違いについては変わることもありますのでGoogleのドキュメントを参照してください。
https://cloud.google.com/security-command-center/docs/concepts-security-health-analytics?hl=ja
https://cloud.google.com/security-command-center/docs/concepts-web-security-scanner-overview?hl=ja
組織で有効化した場合とプロジェクトで有効化した場合の違い
SCCは組織で有効化した場合と、プロジェクトで有効化した場合で大きく2つ違いがあります。
それは「組織で有効化した場合にのみ利用できる機能がある」ことと「利用料金に多少の違いがある」ことです。
組織で有効化した場合にのみ利用できる機能
例えばSecurity Health Analyticsでは、親組織でSCCが有効化されていないと検出できない機能がいくつかあります。
https://cloud.google.com/security-command-center/docs/concepts-vulnerabilities-findings?hl=ja#mfa-findings
大事な検出項目だと以下のようなものがあります。
上記のように組織で有効化した場合の違いはいくつかの機能であるので、組織でSCCを有効化しておく方が良いでしょう。
利用料金の違い
組織で有効化した場合と、プロジェクトで有効化した場合で料金の違いがあります。
組織で有効化する方が安い値段設定になっています。
上記のように2割程度安くなります。 「組織レベルでの有効化の料金」は、組織をプレミアムティアで設定した場合の料金なので、組織でプレミアムティアを有効化しておく方が良いでしょう。
検知内容の通知
SCCでは検知した内容をPub/SubへExportする機能があります。
組織で有効化した場合でも、プロジェクト単位でExportの設定は可能です。
ですので、組織単位で検知した内容をExportしたい場合は組織のExportで設定し、
プロジェクト単位で検知した内容をExportしたい場合はプロジェクトで設定すると良いでしょう。
ただし、ExportはPub/Subにしかできないことと、Pub/Subから先は自分でGCFなどを作成する必要があるので、以下のような方針になります。
- 組織単位でExportする場合は、共通基盤的なプロジェクトを作成し、そこにPub/SubやGCFを作成して通知する
- プロジェクト単位で通知先を分けたい場合は、Pub/SubおよびGCFを分けるか、通知内容を見て通知先を分けるロジックを仕込む必要がある
- プロジェクト単位でExportする場合は、各プロジェクトにPub/SubとGCFを作成して通知する
上記の方針はプロジェクトや設計などによって変わってきます。良し悪しはその時々検討してみてください。
尚、通知先については私は専らSlackへ行っています。
(メール通知の場合、Google CloudはSMTP25ポートの送信が許可されていないため外部にメールサーバを用意する必要が出てきてしまうため)
まとめ
設定方針についてまとめるということでまとめてみました。
今回まとめた内容としては以下の通りです。
- SCCを有効化する場合組織で有効化しておいた方が良い
- 使える機能が増える
- 組織でプレミアムティアを有効化することで料金が2割程度安くなる
- SCCは組織で設定した内容をプロジェクトで上書き可能な仕様になっている
- 各プロジェクトで必要に応じてティアの変更や、利用しない機能などをオフすると良い
- 組織でプレミアムティアで設定しているため、SCCのプレミアムティアが不要なプロジェクトは適宜ダウングレードを行う
- 各プロジェクトで必要に応じてティアの変更や、利用しない機能などをオフすると良い
- SCCのExport設定は組織・プロジェクトの場合でそれぞれ対応が分かれる
- 組織単位の場合は共通プロジェクトを作成して、そこから通知する
- プロジェクト単位の場合は、各プロジェクトから通知する
おわりに
SCCの設定方針についてまとまった記事などを見つけられなかったため今回自分のためにもまとめてよかったです。
弊社内または誰かのお役に立てる記事になれば幸いです。
GI Cloud は事業の拡大に向けて一緒に夢を追う仲間を募集しています
当社は「クラウドで日本のIT業界を変革し、世の中をもっとハッピーに」をミッションに掲げ、Google Cloudに特化した技術者集団として、お客様にコンサルティングからシステム開発、運用・保守まで一気通貫でサービスを提供しています。
まだ小規模な事業体ですが、スタートアップならではの活気と成長性に加えて、大手総合商社である伊藤忠グループの一員としてやりがいのある案件にもどんどんチャレンジできる環境が整っています。成長意欲の高い仲間と共にスキルを磨きながら、クラウドの力で世の中をもっとハッピーにしたい。そんな我々の想いに共感できる方のエントリーをお待ちしています。
※本記事は、ジーアイクラウド株式会社の見解を述べたものであり、必要な調査・検討は行っているものの必ずしもその正確性や真実性を保証するものではありません。
※リンクを利用する際には、必ず出典がGIC dryaki-blogであることを明記してください。
リンクの利用によりトラブルが発生した場合、リンクを設置した方ご自身の責任で対応してください。
ジーアイクラウド株式会社はユーザーによるリンクの利用につき、如何なる責任を負うものではありません。