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認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
AWS Systems Manager AutomationでEC2の自動停止
Systems Manager Automationがない時代に、Lambdaを …
-
AWS Summit 2016 Tokyoに参加してきました (Day2)
馬込は非常に良い天気です。 泊まっている部屋が2Fでしたので窓を明けると歩いてい …
-
AWS Certificate Manager証明書とAmazon Route 53でAmazon API GatewayのAPIのカスタムドメイン名前解決する
AWS Certificate ManagerとAmazon Route 53と …
-
AWS Protonの管理者ガイドとユーザーガイドのチュートリアル
AWS Proton管理者ガイドのAWS Management Console …
-
AWS Systems Manager Fleet Manager Windows RDP Connectを試してみました
AWS Systems Manager Fleet Manager Window …
-
Amazon CloudWatch RUMはじめました
新機能 – Amazon CloudWatch RUM をご紹介 2021年12 …
-
AWS Organizations SCPで許可ポリシーの設定をし継承の関係を確認する
ユーザーガイドのサービスコントロールポリシーの例にはDeny(拒否)ばっかりでA …
-
QuickSightのVisualizeをダッシュボード化して定期メール
「Backlogの実績工数をAmazon QuickSightで可視化してわかっ …
-
EC2ユーザーデータからメタデータを取得してRocket.Chatで80ポートを使用する
Rocket.Chatのデフォルトポート番号は3000です。 80を使うようにす …
-
AWS EC2 インスタンスステータスのチェックで失敗して起動しなくなり復旧
EC2のインスタンスに接続出来なくなったので、AMIから作成してElastic …