AWS WAF Web ACLとルールをv1(Classic)からv2に自動移行しました
2021/06/06
新しいものは、課題が解決されていたり、機能追加されたりするのでいいものです。
長い間放置していたAWS WAFのWeb ACLをv2に自動移行しました。
こちらのAWS WAF Classic リソースを AWS WAF に移行するを見ながら行いました。
目次
S3バケットの作成
aws-waf-migration- から始まるS3バケットを作成しておきます。
aws-waf-migration-は固定で必要です。
Web ACLのマイグレーション
[Switch to AWS WAF Classic]を選択して切り替えました。
WAFの対象リージョン、またはGlobal(CloudFront)を選択して、[migration wizard]を選択しました。
移行対象のACLとバケットを選択します。
バケットはaws-waf-migration- が含まれていないと対象にできませんでした。
バケットのリージョンはWAFのデプロイ先リージョンにすると書いてますが、CloudFront向けなので関係ないかと思い、オハイオにしてみました。
S3バケットポリシーは自動生成にしました。
移行できないルールの処理方法は、除外するにしました。
移行できない場合に処理を停止することもできるそうです。
Error: We couldn’t apply the bucket policy. This is most likely due to the bucket not being in the expected region (global).
PermanentRedirect: The bucket you are attempting to access must be addressed using the specified endpoint. Please send all future requests to this endpoint.
バケットポリシーが作成できないエラーになりました。
仕方ないので手動でバケットポリシーを設定しました。
ユーザーガイドどおりにしました。
バケットARNだけ変更しました。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "apiv2migration.waf.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::<BUCKET_NAME>/AWSWAF/<CUSTOMER_ACCOUNT_ID>/*" } ] } |
気を取り直して実行しました。
成功しました。
[Create CloudFormation stack]ボタンからスタックを作成しました。
成功しました。
Web ACL、Rule、IP setsが移行されました。
これをCloudFron Distributionで設定しました。
テストして想定どおりのブロックと許可がされました。
1日様子を見て問題がなければクラシックのv1ACLとルールを削除します。
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第2版」という本を書きました。
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
AWS DeepLensセットアップの儀
AWS DeepLensのセットアップを開始します。 AWS DeepLensを …
-
AWS ControlTowerで既存アカウントをまとめて追加
AWS Organizationsに新たに招待したアカウントをAWS Contr …
-
API GatewayのアクセスログをCloudWatchに記録する
Amazon API GatewayのアクセスログをCloudWatchに記録で …
-
EC2 セッションマネージャにEC2インスタンスの一覧から接続できるようになりました
EC2に接続する時に、どうしてもSSHクライアントから接続しないといけない場合を …
-
AWS DeepLens開封の儀
去年(2019年)7月にamazon.co.jpでDeepLens買えますやんっ …
-
Amazon SNSサブスクリプションフィルターで優先度別のSQSキューにサブスクライブする
EC2のコンシューマーアプリケーションは優先度の高いキューのメッセージを先に処理 …
-
CloudFormation StackSetsでOrganizations組織のアカウントに一気にIAMロールを作成した
Organizationsで管理している各アカウントにIAMロールを作成したい場 …
-
AWS認定SAPの執筆開始にあたって環境を構築しました
AWS認定ソリューションアーキテクトプロフェッショナル対策本の執筆開始にあたりま …
-
AWS Organizationsで新規メンバー登録したアカウントを組織から離して解約
2021年現在ではこの方法しかないと認識していますので書き残します。 そのうち新 …
-
AWS CloudShellでboto3(SDK for Python)使うならpython3
本の執筆をしていて、ちょっとAWS CLIやSDKのふるまいを確認したいことがあ …