####前置き
毎日AWSについてまとめてみようシリーズ7日目です。
初学者ですが温かい目で見守ってください。(もちろん間違いは指摘お願いします)
#そもそもReferer制限ってなに?
**Referer(リファラ)**とは簡単に言うと、今見ているページを見る直前に見ていたページのURLのこと。
SEO対策する時には必須の知識らしいです。
よってReferer制限の意味は、直前に開いていたサイトに応じてアクセスを制限するという意味になります。
#WAFってなに?
WAFはWeb Application Firewallの略で、検出パターンを設定することで、ウェブサイトとウェブサイト利用者との間の通信の内容を機械的に検査することができます。(Wikipediaより)
WAFで検出するものは**HTTP通信(リクエスト、レスポンス)**です。そのHTTP通信に基づいて、通信をそのまま通過させたり、遮断したり、エラーを出したりします。
例えば、HTTPリクエストにはリクエスト発信元の情報が入っています。それを利用すると、WAF側で設定して、発信元が日本だった場合は通信を遮断させるなんてことも可能になるわけです。
#AWS WAFってなに?
AWS WAFはAmazon CloudFrontなどに転送されるHTTPおよびHTTPSリクエストをモニタリング可能にするウェブアプリケーションファイアウォールです。簡単にAWSで使えるWAFって感じでいいと思います。
もちろんリクエストに含まれる情報(=リクエスト発信元の国、リクエストの文字列など)に応じたコンテンツへのアクセス制限もできます。
#AWS WAFの基本動作3選
指定したリクエスト以外のすべてのリクエストを許可する
特定の攻撃者からのリクエストを排除するときに利用します。
指定したリクエスト以外のすべてのリクエストをブロックする
制限されたウェブサイトを作りたい時に利用します。
例 : 日本国内以外からのアクセスは出来ないようにしたい。
指定したプロパティに一致するリクエストをカウントする
テスト用。全てのアクセスを拒否するようになっていないか確認するために使うことがあります。確認した後はリクエストを許可または拒否するように動作を変更できます。
#まとめると AWS WAF Referer制限とは
HTTPリクエストに含まれている情報である直前に閲覧していたページのURLに基づいて、自分のサイトへのリクエストを制限すること。
外部リンクから自分のサイトに置いてあるファイルをダウンロードされたくない時とかに使うみたい。
#最後に
ここまで見てくださってありがとうございます。
参考
https://docs.aws.amazon.com/ja_jp/waf/latest/developerguide/what-is-aws-waf.html
https://docs.aws.amazon.com/ja_jp/AmazonCloudFront/latest/DeveloperGuide/distribution-web-awswaf.html
※公式ドキュメント以外の記事などは練習のため基本的には読まないようにしています(個々の分からない単語はもちろんググります)。