メニュー
AWS CloudFormation
ユーザーガイド (API Version 2010-05-15)

AWS::WAF::IPSet

AWS::WAF::IPSet リソースは、リクエストの送信元 IP アドレスに基づいて許可またはブロックするウェブリクエストを指定する AWS WAF IPSet を作成します。詳細については、AWS WAF API リファレンスの「CreateIPSet」を参照してください。

構文

AWS CloudFormation テンプレートでこのエンティティを宣言するには、次の構文を使用します。

JSON

Copy
{ "Type" : "AWS::WAF::IPSet", "Properties" : { "IPSetDescriptors" : [ IPSet descriptor, ... ], "Name" : String } }

YAML

Copy
Type: "AWS::WAF::IPSet" Properties: IPSetDescriptors: - IPSet descriptor Name: String

プロパティ

IPSetDescriptors

ウェブリクエストの送信元の IP アドレスタイプと IP アドレス範囲 (CIDR 表記)。IPSet を、Amazon CloudFront (CloudFront) ディストリビューションに関連付けられたウェブ ACL に関連付けた場合、この記述子は CloudFront アクセスログにある次のいずれかのフィールドの値になります。

c-ip

ビューアがリクエストの送信に HTTP プロキシまたはロードバランサーを使用しなかった場合

x-forwarded-for

ビューアがリクエストの送信に HTTP プロキシまたはロードバランサーを使用した場合

Required: No

AWS WAF IPSet IPSetDescriptorsType: リスト

更新に伴う要件: 中断はありません。

Name

IPSet のフレンドリ名または説明。

Required: Yes

Type: String

更新に伴う要件: 置換

戻り値

参照番号

このリソースの論理 ID が Ref 組み込み関数に提供されると、Ref により 1234a1a-a1b1-12a1-abcd-a123b123456 のようなリソース物理 ID が返されます。

Ref 関数の使用方法の詳細については、「Ref」を参照してください。

IP アドレスの定義

次の例では、ウェブアクセスコントロールリスト (ACL) ルールの一連の IP アドレスを定義します。

JSON

Copy
"MyIPSetBlacklist": { "Type": "AWS::WAF::IPSet", "Properties": { "Name": "IPSet for blacklisted IP adresses", "IPSetDescriptors": [ { "Type" : "IPV4", "Value" : "192.0.2.44/32" }, { "Type" : "IPV4", "Value" : "192.0.7.0/24" } ] } }

YAML

Copy
MyIPSetBlacklist: Type: "AWS::WAF::IPSet" Properties: Name: "IPSet for blacklisted IP adresses" IPSetDescriptors: - Type: "IPV4" Value: "192.0.2.44/32" - Type: "IPV4" Value: "192.0.7.0/24"

IPSet とウェブ ACL ルールを関連付ける

次の例では、MyIPSetBlacklist IP セットとウェブ ACL ルールを関連付けます。

JSON

Copy
"MyIPSetRule" : { "Type": "AWS::WAF::Rule", "Properties": { "Name": "MyIPSetRule", "MetricName" : "MyIPSetRule", "Predicates": [ { "DataId" : { "Ref" : "MyIPSetBlacklist" }, "Negated" : false, "Type" : "IPMatch" } ] } }

YAML

Copy
MyIPSetRule: Type: "AWS::WAF::Rule" Properties: Name: "MyIPSetRule" MetricName: "MyIPSetRule" Predicates: - DataId: Ref: "MyIPSetBlacklist" Negated: false Type: "IPMatch"

ウェブ ACL を作成する

次の例では、MyIPSetRule ルールとウェブ ACL を関連付けます。ウェブ ACL は、MyIPSetRule で定義されたアドレスを除く、すべての IP アドレスから送信されるリクエストを許可します。

JSON

Copy
"MyWebACL": { "Type": "AWS::WAF::WebACL", "Properties": { "Name": "WebACL to block blacklisted IP addresses", "DefaultAction": { "Type": "ALLOW" }, "MetricName" : "MyWebACL", "Rules": [ { "Action" : { "Type" : "BLOCK" }, "Priority" : 1, "RuleId" : { "Ref" : "MyIPSetRule" } } ] } }

YAML

Copy
MyWebACL: Type: "AWS::WAF::WebACL" Properties: Name: "WebACL to block blacklisted IP addresses" DefaultAction: Type: "ALLOW" MetricName: "MyWebACL" Rules: - Action: Type: "BLOCK" Priority: 1 RuleId: Ref: "MyIPSetRule"

このページの内容: