Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
課金体系を紐解いて学ぶAWS WAF
Search
maimyyym
October 23, 2024
Technology
3
260
課金体系を紐解いて学ぶAWS WAF
2024/10/23 【AWS】AWS10分LT会 - vol.5
https://aws-likers.connpass.com/event/330782/
maimyyym
October 23, 2024
Tweet
Share
More Decks by maimyyym
See All by maimyyym
大規模サーバーレスAPIの堅牢性・信頼性設計 〜AWSのベストプラクティスから始まる現実的制約との向き合い方〜
maimyyym
11
5.5k
Amazon Inspector コードセキュリティで手軽に実現するシフトレフト
maimyyym
0
380
組織とセキュリティ文化と、自分の一歩
maimyyym
3
1.5k
大規模サーバーレスプロジェクトのリアルな零れ話
maimyyym
3
390
ABWG2024採択者が語るエンジニアとしての自分自身の見つけ方〜発信して、つながって、世界を広げていく〜
maimyyym
1
510
re:Invent2024で広がった AWS Verified Accessの可能性を探る
maimyyym
1
250
“自分”を大切に、フラットに。キャリアチェンジしてからの一年 三ヶ月で見えたもの。
maimyyym
0
470
IAM JSON ポリシーと仲良くなろう
maimyyym
3
180
2年目エンジニアが過ごしたre:Invent、私にできる明日からのEverything starts with security
maimyyym
0
160
Other Decks in Technology
See All in Technology
なぜインフラコードのモジュール化は難しいのか - アプリケーションコードとの本質的な違いから考える
mizzy
36
11k
ソフトウェアテストのAI活用_ver1.50
fumisuke
0
300
“それなりに”安全なWebアプリケーションの作り方
xryuseix
0
270
フライトコントローラPX4の中身(制御器)を覗いてみた
santana_hammer
1
140
コミュニティと共に変化する 私とFusicの8年間
ayasamind
0
450
CDKの魔法を少し解いてみる ― synth・build・diffで覗くIaCの裏側 ―
takahumi27
1
110
隙間ツール開発のすすめ / PHP Conference Fukuoka 2025
meihei3
0
320
Pythonで構築する全国市町村ナレッジグラフ: GraphRAGを用いた意味的地域検索への応用
negi111111
8
3.4k
仕様駆動 x Codex で 超効率開発
ismk
2
1.3k
AI時代におけるドメイン駆動設計 入門 / Introduction to Domain-Driven Design in the AI Era
fendo181
0
660
Copilotの精度を上げる!カスタムプロンプト入門.pdf
ismk
10
3.3k
マイクロリブート ~ACEマインドセットで実現するアジャイル~
sony
0
230
Featured
See All Featured
A Tale of Four Properties
chriscoyier
161
23k
RailsConf 2023
tenderlove
30
1.3k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
For a Future-Friendly Web
brad_frost
180
10k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
Documentation Writing (for coders)
carmenintech
76
5.1k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
2.9k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Raft: Consensus for Rubyists
vanstee
140
7.2k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Transcript
©Fusic Co., Ltd. 0 課⾦体系 を紐解いて学ぶ AWS WAF 2024.10.23 Mai
Miyazaki @maimyyym 【AWS】AWS10分LT会 - vol.5
©Fusic Co., Ltd. 1 宮崎 真⾐ Miyazaki Mai HN: mai
(@maimyyym ) ◉ I am - 管理栄養⼠(養成校卒業・資格保持のみ) - 元百貨店スタッフ(Beauty Counselor) - 2023年10⽉ Fusic⼊社 ◉ Skill - AWS / Python / TypeScript / PHP(Laravel) ◉ Comment - AWS10分LT会の登壇は2回⽬です! (2⽉のvol.3でお話しました) ⾃⼰紹介 はじめに 事業本部 技術創造部⾨ / エンジニア 株式会社Fusic at 福岡
©Fusic Co., Ltd. 2 CONTENTS ⽬次 1. AWS WAFとは 2.
課⾦対象の基本要素 3. 料⾦を計算してみる 4. もう⼀つの課⾦要素・WCUs 5. まとめ
©Fusic Co., Ltd. 3 AWS WAFとは そもそもWAFとは? / AWS WAFについて
/ 話すこと・話さないこと 1
©Fusic Co., Ltd. 4 そもそもWAFとは? AWS WAFとは WAF = Web
Application Firewall https://aws.amazon.com/jp/waf/what-is-waf/ Web アプリケーションの通信をフィルター、監視、 ブロックするためのソフトウェアまたは、ハードウェア のセキュリティ対策です。
©Fusic Co., Ltd. 5 そもそもWAFとは? AWS WAFとは WAF = Web
Application Firewall XSS DDoS 不正なbot SQLインジェクション Webアプリケーションの 脆弱性を悪⽤ アプリケーション層を 狙った攻撃 Webアプリケーション WAF
©Fusic Co., Ltd. 6 AWS WAFについて AWS WAFとは AWS が提供するクラウド型
WAF のサービス AWS WAFとは • SQL インジェクションなどの ⼀般的な攻撃を検知するルール • 様々なマッチ条件によるフィルター • IP リスト • レートコントロール などの機能で不正な通信の検知・遮断を⾏う
©Fusic Co., Ltd. 7 AWS WAFについて AWS WAFとは AWS WAFの始め⽅
https://docs.aws.amazon.com/ja_jp/waf/latest/developerguide/getting-started.html WebACLを作成 ルール・ルールグループを 作成・WebACLに追加 WebACLを リソースに関連付け
©Fusic Co., Ltd. 8 AWS WAFについて AWS WAFとは WebACLを関連付けることでリソースを保護 AWS
WAFによるリソース保護 https://docs.aws.amazon.com/ja_jp/waf/latest/developerguide/how-aws-waf-works-resources.html [グローバルリソース] • CloudFrontディストリビューション [リージョナルリソース] • Amazon API Gateway REST API • Application Load Balancer • AWS AppSync GraphQL API • Amazon Cognito ユーザープール • AWS App Runner サービス • AWS Verified Accessインスタンス
©Fusic Co., Ltd. 9 AWS WAFについて AWS WAFとは AWS WAFによるリソース保護
使い⽅はなんとなく分かった。 できることもなんとなく分かった。 …でも、課⾦体系がよく分からない! WebACL ルール ルールグループ
©Fusic Co., Ltd. 10 話すこと・話さないこと AWS WAFとは 話すこと AWS WAFの課⾦にまつわる基本的な要素について
話さないこと AWS WAFの設定・構築⽅法とベストプラクティス 課⾦単位より細かなコンポーネントについて (※ステートメントやルールタイプなど)
©Fusic Co., Ltd. 11 課⾦対象の基本要素 基本の3要素 / WebACL / 独⾃ルール・ルールグループ
/ マネージドルールグループ 2
©Fusic Co., Ltd. 12 基本の3要素 課⾦対象の基本要素 WebACL ルール リクエスト 基本はこの3要素!
WebACL1つごとに$5 ルールごとに$1 $0.6/100万リクエスト (※⽉あたり) 設定により 追加料⾦が発⽣
©Fusic Co., Ltd. 13 WebACL 課⾦対象の基本要素 WebACL WebACL WebACL WebACL
$5.00 $5.00 $10.00 ※WebACLは複数リソースに関連付けが可能(CloudFrontディストリビューション以外) ($5 × 1 WebACL) ($5 × 1 WebACL) ($5 × 2 WebACL) 1台 1台 2台
©Fusic Co., Ltd. 14 独⾃ルール・ルールグループ 課⾦対象の基本要素 独⾃ルール (ユーザー作成の独⾃ルール) ルール ルール
ルール ルール ルール ルール ルールグループ $3.00 $4.00 ($1 × 3 Rules) ($1 × 3 Rules + $1 × 1RuleGroup)
©Fusic Co., Ltd. 15 独⾃ルール・ルールグループ 課⾦対象の基本要素 独⾃ルール (ユーザー作成の独⾃ルール) ルール ルール
ルール ルール ルール ルール ルールグループ $3.00 $4.00 ($1 × 3 Rules) ($1 × 3 Rules + $1 × 1RuleGroup) ルールアクションに 「CAPTCHA」 「チャレンジレスポンス」 を設定すると追加料⾦あり
©Fusic Co., Ltd. 16 マネージドルールグループ 課⾦対象の基本要素 マネージドルールグループ (AWSまたはAWS Marketplace販売者により事前定義) $1.00
$2.00 ($1 × 1 ManagedRuleGroup) ($1 × 2RuleGroup) ルール ルール ルール マネージド ルールグループ ルール ルール ルール マネージド ルールグループ ルール ルール ルール マネージド ルールグループ
©Fusic Co., Ltd. 17 マネージドルールグループ 課⾦対象の基本要素 マネージドルールグループ (AWSまたはAWS Marketplace販売者により事前定義) $1.00
$2.00 ($1 × 1 ManagedRuleGroup) ($1 × 2RuleGroup) ルール ルール ルール マネージド ルールグループ ルール ルール ルール マネージド ルールグループ ルール ルール ルール マネージド ルールグループ マネージドルールグループの利⽤ に追加料⾦がかかるものがある
©Fusic Co., Ltd. 18 “追加料⾦なし”で使えるマネージドルールグループ 課⾦対象の基本要素 SQLデータベース Linux OS POSIX
OS Windows OS PHPアプリケーション WordPressアプリケーション コアルールセットマネージドグループ 管理者保護マネージドグループ 既知の不正な⼊⼒マネージドグループ AmazonIP評価リストマネージドグループ 匿名IPリストマネージドグループ ベースラインルールグループ ユースケース固有のルールグループ IP評価ルールグループ ※ルール料⾦($1)は課⾦されるが、利⽤料⾦はかからない
©Fusic Co., Ltd. 19 料⾦を計算してみる WebACL + 独⾃ルール / WebACL
+ 独⾃ルールグループ WebACL + 独⾃ルール・ルールグループ / WebACL + マネージドルールグループ + 独⾃ルール 3 追加料⾦を 考えずに!
©Fusic Co., Ltd. 20 WebACL + 独⾃ルール 料⾦を計算してみる WebACL 独⾃ルール
独⾃ルール WebACL:$5 独⾃ルール:$1 独⾃ルール:$1 $7
©Fusic Co., Ltd. 21 WebACL + 独⾃ルールグループ 料⾦を計算してみる WebACL WebACL:$5
独⾃ルールグループ:$4 $9 ルール ルール ルール 独⾃ルールグループ
©Fusic Co., Ltd. 22 WebACL + 独⾃ルール・ルールグループ 料⾦を計算してみる WebACL WebACL:$5
独⾃ルールグループ:$4 独⾃ルール:$1 $10 ルール ルール ルール 独⾃ルールグループ 独⾃ルール
©Fusic Co., Ltd. 23 WebACL + マネージドルールグループ + 独⾃ルール 料⾦を計算してみる
WebACL WebACL:$5 マネージドルールグループ:$1 独⾃ルール:$1 $7 独⾃ルール ルール ルール ルール マネージド ルールグループ
©Fusic Co., Ltd. 24 もう⼀つの課⾦要素・WCUs WCUsとは 4
©Fusic Co., Ltd. 25 WCUsとは もう⼀つの課⾦要素・WCUs WCUs(WebACL Capacity Units)とは? WebACL・ルール・ルールグループの実⾏に必要な運⽤リソースを計算・制御する
トラフィックを検査するための処理負荷=WCUs ルールが複雑・多量になれば、それだけWCUsは⼤きくなる。 ルール ルール ルール ルール ルール ルール ルール ルール ルール ルール WCUsを少なく抑える戦略も⼤事。
©Fusic Co., Ltd. 26 WCUsとは もう⼀つの課⾦要素・WCUs WCUs(WebACL Capacity Units)とは? WebACL・ルール・ルールグループの実⾏に必要な運⽤リソースを計算・制御する
トラフィックを検査するための処理負荷=WCUs ルールが複雑になれば、それだけWCUsは⼤きくなる。 ルール ルール ルール ルール ルール ルール ルール ルール ルール ルール WCUsを少なく抑える戦略も⼤事。 【ルールのWCUs】 ルールタイプごとに計算 【ルールグループのWCUs】 ルールグループ内で 定義したルールによって決まる 最⼤容量:5000WCU 【WebACLのWCUs】 WebACLで使⽤するルールと ルールグループによって決まる 最⼤容量:5000WCU 【WCUsによる追加料⾦】 WebACL基本料⾦に1500WCUを含む 1500WCU超過分は、500WCUごとに リクエスト100万件あたりの追加料⾦
©Fusic Co., Ltd. 27 まとめ 課⾦体系をおさらい / 課⾦体系から理解するAWS WAF 5
©Fusic Co., Ltd. 28 リクエスト WebACL ルール ルールグループ 課⾦体系をおさらい まとめ
WebACL リクエスト 基本3要素 + 追加料⾦要素 ルール ルール ルール ルールグループ マネージドルールグループ CAPCHA チャレンジレスポンス は追加料⾦ 利⽤料⾦:有料 の場合は追加料⾦ WebACLのWCUsが 1500を超えると追加料⾦ WCUsを計算!
©Fusic Co., Ltd. 29 [マネージドルールグループ] - 必要なものを選択 [独⾃ルール] - IPアドレス制限
課⾦体系から理解するAWS WAF まとめ [この発表の背景] シンプルなIP制限だけではない、 料⾦計算と提案を伴うAWS WAFの実装体験 どこに何の料⾦がかかるのか?を整理することで WAFを構成するコンポーネントと取捨選択のキーワード を理解できました 異なる制御の WebACLが複数!
©Fusic Co., Ltd. 30 Thank You We are Hiring! https://recruit.fusic.co.jp/
ご清聴いただきありがとうございました