0
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?

CloudFormationでWAFのマネージドルールが作成できなかった話

Last updated at Posted at 2024-10-11

はじめに

アウトアプットの練習で書いてみた
Resource typeはType: AWS::WAFv2::WebACL

結論

マネージドルールグループをRulesに追加した時Actionが二重に指定されているのが原因でエラーになり作成できなかった。

問題

CloudFormationでALBにWAFを追加してせキュリティを向上させようと思いマネージドルールを追加するtmplateを作ったけど作成できない。

実際のコードの一部

- Name: AWS-AWSManagedRulesCommonRuleSet
          Priority: 2
          Statement:
            ManagedRuleGroupStatement:
              VendorName: AWS
              Name: AWSManagedRulesCommonRuleSet
              ExcludedRules:
                - Name: SizeRestrictions_BODY
                - Name: CrossSiteScripting_BODY
          Action:
            Allow: {}
          VisibilityConfig:
            CloudWatchMetricsEnabled: true
            MetricName: AWSManagedRulesCommonRuleSet
            SampledRequestsEnabled: true

ACLのRulesに指定したマネージドルールです。
色々ためしてルールを変えたりするとstackが作成される時もあって成功する時と失敗する時の差がわからず苦労した。

解決方法

公式のマネージドルールグループでルールの詳細を確認すると一つのルールにActionが指定されていたのでこっちがActionを決める必要なないと思いActionを上書きしないようにした。

- Name: AWS-AWSManagedRulesCommonRuleSet
          Priority: 2
          Statement:
            ManagedRuleGroupStatement:
              VendorName: AWS
              Name: AWSManagedRulesCommonRuleSet
              ExcludedRules:
                - Name: SizeRestrictions_BODY
                - Name: CrossSiteScripting_BODY
          OverrideAction:    #  ここで上書きするか変更できるが
            None: {}         #  countとNoneしかサポートされてない
          VisibilityConfig:
            CloudWatchMetricsEnabled: true
            MetricName: AWSManagedRulesCommonRuleSet
            SampledRequestsEnabled: true

こうすると無事にstackが作成できたのでActionの二重指定が原因だったと分かった。

終わりに

いろんな記事とchatgptで調べていたけどchatgptは割と嘘をいうので最終確認は記事を参考にしていた。コードもOverrideAction:を使用している記事もあったが、追加したルールをAllowにしないと機能してないのではないかと勘違いしていて書き換えてしまったのが原因かなと思う。

参考サイト

AWS WAFを使ってIPアドレスを制限する方法

AWS::WAFv2::WebACL

ベースラインルールグループ

0
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
0
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?