AWS Firewall Manager によって自動で Web ACL が関連付けされた場合もセキュリティポリシーの削除が出来るかを確認してみた

2022.10.02

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

いわさです。

最近 AWS Firewall Manager を使っています。
Firewall Manager で AWS WAF を構成すると、スコープアカウントに自動で Web ACL が作成されます。

この AWS WAF の Web ACL ですが、非 Firewall Manager 環境で ALB を保護している場合、 ALB は削除することが出来ますが Web ACL を削除することは出来ません。
以下のように Web ACL の関連付けを先に解除するように要求されます。

Error AWS WAF couldn’t perform the operation because your resource is being used by another resource or it’s associated with another resource.

ポリシー作成後に自動で対象アカウントの対象リソースに Web ACL が自動適用されますが、その状態でポリシーを削除することは出来るのでしょうか。

セキュリティポリシーを自動適用させる

例えば Firewall Manager で作成したセキュリティポリシーで AWS WAF を構成した場合、無条件にすぐに ALB などのリソースに適用されるとは限りません。
セキュリティポリシーには「自動適用」の設定があります。

Edit Policy Action の Auto remediate です。
こちらを無効化した場合はセキュリティポリシーを作成しても以下のようにリソースへの適用まではされません。

独自の Web ACL を関連付けしている ALB はそのままでした。

AWS WAF の統合がされていない ALB もそのままでした。

自動適用(置き換えなし)

さらに自動適用を有効化した場合でも、設定済み Web ACL を上書きするかどうかのオプションを選択出来ます。
まずは置き換えなしのパターンで ALB への適用を行ってみます。

独自 Web ACL が適用されていない ALB には、セキュリティポリシーで作成された Web ACL が自動適用されました。

独自 Web ACL が適用されている ALB は、Firewall Manager で管理される Web ACL が自動適用されずに元のままです。

そのため、置き換えされなかった対象アカウントのステータスは非準拠となったままです。

自動適用(置き換えあり)

次は置き換えを行うパターンも試してみます。

今度は独自 Web ACL が設定されていた ALB にも Firewall Manager で管理された Web ACL が適用されました。

ステータスもすべてのアカウントが準拠状態となりました。

ポリシーを削除する

それでは準備が出来たので本題のポリシー削除を行ってみます。
ポリシーを選択して削除ボタンを押すだけです。

削除の際に「Delete all policy resources」を選択します。

ポリシーの削除に成功しました。
そしてセキュリティポリシー一覧からも削除されました。

ALB に関連付けられていても削除出来る

スコープ内のアカウントを確認してみると Firewall Manager で管理されていた Web ACL が削除されていました。

そして ALB は保護されない状態となりました。

おまけ:削除後の Firewall Manager の料金

Firewall Manager の今回使用した AWS WAF 保護ポリシーはポリシー 1 つあたり 月額 100 USD とされています。

月途中で削除するとどうなるでしょうか。
AWS のサービスでは解除した日までの日割りになるものや、月末までかかるものもあります。

日割りだとした場合 100 ドル/月なので 1 日 3.33 USD 程度でしょうか。

結論としては削除した時点から料金が発生しなくなります。
日割りにしてくれる仕様は検証など気軽に出来そうなのでありがたいです。

さいごに

本日は AWS Firewall Manager によって自動で Web ACL が関連付けされた場合もセキュリティポリシーの削除が出来るかを確認してみました。

独自の Web ACL の場合は事前に ALB からの関連付けを解除したあとに削除する必要がありましたが、Firewall Manager で配布される Web ACL の場合は事前に ALB からの関連解除を行う必要がないということがわかりました。