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認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。
「AWS教科書 AWS認定デベロッパーアソシエイト テキスト&問題集 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
関連記事
-
-
AWS EC2 でインスタンスにIPアドレスを紐付ける
AWS EC2で作ったサーバは何もしなければ起動するたびにIPアドレスが変わって …
-
-
CloudFrontのVPCオリジンを使用してApplication Load Balancerをプライベートサブネットで起動する
このブログのApplication Load Balancerはパブリックサブネ …
-
-
AWSアカウント ルートユーザーのMFAが使えなくなったので復旧
AWSのルートユーザーどころか、MFAが使えるログインすべてが使えなくなって焦り …
-
-
JAWS-UG Osaka 第15回勉強会 AWS Summit Tokyo 2016 アップデート追っかけ会
「JAWS-UG Osaka 第15回勉強会 AWS Summit Tokyo …
-
-
AWS X-Ray SDK for PythonをOrganizations組織内にLambda Layersで共有しました
ローカルでパッケージ作成 インストールコマンドはこちらAWS X-Ray SDK …
-
-
AlexaにAWSの最新Feedを読み上げてもらう(Lambda Python)
年末にAmazon Echo Dotを購入しましたので、練習がてらAlexaスキ …
-
-
EC2 プレイスメントグループを試してみました
やったことないのでやってみたやつです。 プレイスメントグループの作成 まず、EC …
-
-
WordPressで画像アップロードができなくなった(AWS WAFでブロックしていた)
WordPressで画像がアップロードできなくなりました。 こんなメッセージです …
-
-
Introduction to Amazon EKS Workshopの記録
AWS Workshop StudioのIntroduction to Amaz …
-
-
プライベートサブネットのEC2でセッションマネージャを使うようVPCエンドポイントを構成する
インターネットゲートウェイへのルートがないルートテーブルに関連付けられたプライベ …






