AWS CloudFormation
User Guide (API Version 2010-05-15)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

AWS::WAFRegional::IPSet

AWS::WAFRegional::IPSet 资源创建 AWS WAF 区域 IPSet,以指定根据请求来源的 IP 地址允许或阻止哪些 Web 请求。有关更多信息,请参阅 AWS WAF 区域 API 参考 中的 CreateIPSet

语法

要在 AWS CloudFormation 模板中声明此实体,请使用以下语法:

JSON

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

YAML

Type: "AWS::WAFRegional::IPSet" Properties: IPSetDescriptors: - IPSet descriptor Name: String

属性

IPSetDescriptors

Web 请求来源的 IP 地址类型和 IP 地址范围(以 CIDR 表示)。如果您将 IPSet 关联到与 Amazon CloudFront (CloudFront) 分配关联的 Web ACL,则此描述符是 CloudFront 访问日志中的以下字段之一的值:

c-ip

如果查看器未使用 HTTP 代理或负载均衡器发送请求

x-forwarded-for

如果查看器使用 HTTP 代理或负载均衡器发送请求

Required: No

Type: AWS WAF 区域 IPSet IPSetDescriptors 列表

更新要求无需中断

Name

IPSet 的易记名称或描述。

Required: Yes

Type: String

更新要求替换

返回值

Ref

当向 Ref 内部函数提供此资源的逻辑 ID 时,Ref 将返回此资源的物理 ID,如 1234a1a-a1b1-12a1-abcd-a123b123456

有关使用 Ref 功能的更多信息,请参阅参考

示例

定义 IP 地址

下面的示例为一条 Web 访问控制列表 (ACL) 规则定义了一组 IP 地址。

JSON

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

YAML

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

关联 IPSet 与 Web ACL 规则

下面的示例将 MyIPSetBlacklist IP 集关联到一条 Web ACL 规则。

JSON

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

YAML

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

创建 Web ACL

下面的示例将 MyIPSetRule 规则关联到一个 Web ACL。此 Web ACL 允许来自所有 IP 地址的请求,但 MyIPSetRule 中定义的地址除外。

JSON

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

YAML

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

本页内容: