4
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Google Cloud】Cloud Armor を使うときに注意したいこと

Posted at

Google Cloud では、WAF に当たるサービスとして、Cloud Armor が存在します。
Cloud Armor では IP アドレスの列挙による通信の許可・拒否や、条件式による許可・拒否の設定を行うことが可能です。このサービスを利用している際に割り当てと上限に引っかかることがあり、terraform apply で失敗することがあったので、調べてみました。

今回は、このサービスを使うにあたり知っておきたい(あるいは引っかかりやすい)仕様について記事にします。

主な参考は以下のリンクです。

Cloud Armor の構成

Cloud Armor は簡単に表すと以下のような構成となっています。

この様に複数のルールをまとめた「セキュリティポリシー」が存在し、それがロードバランサなどにアタッチされるという仕組みです。例えば、ロードバランサの場合はこのセキュリティポリシーが「バックエンドサービス」にアタッチされます。

上限などの制約

「セキュリティポリシー」そのものの数はプロジェクトに対して 10 個がデフォルトの上限になっています。

セキュリティポリシー内に記述される「セキュリティポリシールール」については、そのルールが「どのようなルールであるか」でプロジェクト内の上限が変わってきます。

セキュリティポリシールールの制約

セキュリティポリシールールは大きく分けて 2 種類のルールに分類されます。

  • IP アドレスを列挙するタイプの(通常の)ルール
  • 高度な一致条件を持つルール

どの種類のルールであるかによって、制約も変わることに注意が必要です。

IP アドレスを列挙するタイプの(通常の)ルール

このルールの場合、1 つのルールに含むことができる IP アドレス(IP アドレスの範囲)の数は 10 までとなります。範囲指定をしたい場合は、/24 のようにサブネットマスクをつけて表現します。
サブネットマスクを記述しない場合は、/32 と同様の意味になります。

このルールは、通常ではプロジェクト全体で 200 個です。

高度な一致条件を持つルール

このルールは、様々な条件式を利用して WAF を構成するというルールです。
例えば、OWASP TOP 10 のルールに対するルールを作成したい場合はこのルールを用いる必要があります。

1 つのルールの中に複数の条件式を含むことができますが、式の数は 1 ルールにつき 5 式までという上限があります。

また、この種類のルールは 1 プロジェクトにつき最大 20 個までとなっている点に注意が必要です。

まとめ

Cloud Armor を利用する際は、以下の仕様を把握しておくことが重要です。

項目 デフォルト上限
セキュリティポリシー数(プロジェクトあたり) 10
通常ルール数(プロジェクトあたり) 200
通常ルール内の IP アドレス数(ルールあたり) 10
高度な一致条件ルール数(プロジェクトあたり) 20
高度な一致条件ルール内の条件式数(ルールあたり) 5

特に、高度な一致条件を持つルールは通常ルールに比べて上限が厳しいため、OWASP TOP 10 対策などを実装する際は計画的なルール設計が求められます。上限の引き上げが必要な場合は、Google Cloud コンソールから割り当ての増加をリクエストする必要があります。

4
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?