使用Troposphere在cloudformation模板中配置WAF(Web应用程序防火墙)

时间:2019-02-14 09:45:26

标签: amazon-web-services amazon-cloudformation web-application-firewall troposphere

我想创建WAF并将其附加到我的负载均衡器。

创建WAF需要附加哪些资源和参数,是否有任何示例,您可以建议我吗?

我尝试过这种方法,但是使用cloudformation模板时每个规则集都失败了。

MyWebACL = t.add_resource(
    WebACL(
        "MyWebACL",
        Name=Ref(WebACLName),
        DefaultAction=Action(
            Type="ALLOW"
        ),
        Rules=[
            Rules(
                Action=Action(
                    Type="BLOCK"
                ),
                Priority=1,
                RuleId=Ref(ManualIPBlockRule)
            ),
            Rules(
                Action=Action(
                    Type="COUNT"
                ),
                Priority=2,
                RuleId=Ref(SizeMatchRule)
            ),
            Rules(
                Action=Action(
                    Type="BLOCK"
                ),
                Priority=3,
                RuleId=Ref(SqliRule)
            ),
            Rules(
                Action=Action(
                    Type="BLOCK"
                ),
                Priority=4,
                RuleId=Ref(XssRule)
            )
        ],
        MetricName=(),
    ))

这是我的一个示例规则:

SizeMatchRule = t.add_resource(
    Rule(
        "SizeMatchRule",
        Name=Join("", [Ref(WebACLName), "LargeBodyMatchRule"]),
        MetricName=Join("", [Ref(WebACLName), "DetectLargeBody"]),
        Predicates=[
            Predicates(
                DataId=Ref(SizeMatchSet),
                Type="SizeConstraint",
                Negated=False
            )
        ]
    ))

有任何建议和参考让我知道吗?

0 个答案:

没有答案