[CloudFront] 追加できるリクエストヘッダ一覧
CloudFront から、ALBなどのリクエスト先にヘッダを追加することができます。アクセス環境によって、表示を変えたり、アクセス制御に利用することができます。すべて、リクエストを送ってきた端末(AWSのマニュアルではビューア−)の情報を示しています。
Google Analytics などでも取得できますが、リクエスト時に判別可能で、アプリ側で開発が不要にできることがメリットです。
OS
端末が iOS か Android かを判別できます。表示するストアを変えることもできます。
CloudFront-Is-IOS-Viewer | Apple (iOS) であれば true |
CloudFront-Is-Android-Viewer | Android であれば true |
端末タイプ
電話・タブレット・デスクトップで画面を変更するといったことに使えます。
CloudFront-Is-Desktop-Viewer | デスクトップデバイスであれば true |
CloudFront-Is-Mobile-Viewer | モバイルデバイスであれば true |
CloudFront-Is-SmartTV-Viewer | スマートテレビであれば true |
CloudFront-Is-Tablet-Viewer | タブレットであれば true |
位置情報
2020年7月に IPアドレスベースのジオロケーション項目が追加されました。アクセス元の場所を把握することが可能になりました。(Amazon CloudFront が、より詳細なジオターゲティングのために追加の位置情報ヘッダーを追加)
CloudFront-Viewer-Address | IPアドレスとソースポート番号 |
CloudFront-Viewer-ASN | AS 番号 (ASN) |
CloudFront-Viewer-Country-Region | リージョン (最大3文字) (ISO 3166-2 第1レベル) |
CloudFront-Viewer-Country-Region-Name | リージョン名 (ISO 3166-2 第1レベル) |
CloudFront-Viewer-Country | 国コード (ISO 3166-1 alpha-2) |
CloudFront-Viewer-Country-Name | 国名 |
CloudFront-Viewer-City | 市区町村名 |
CloudFront-Viewer-Latitude | 緯度 |
CloudFront-Viewer-Longitude | 経度 |
CloudFront-Viewer-Postal-Code | 郵便番号 |
CloudFront-Viewer-Metro-Code | メトロコード (米国のみ) |
CloudFront-Viewer-Time-Zone | タイムゾーン (ex. America/Los_Angeles) |
リクエストヘッダ
リクエストされてきたヘッダの順序、増減をチェックすることで不正なリクエストを検知することが可能です。
CloudFront-Viewer-Header-Order | リクエストされたヘッダー名をリクエスト順にコロンで区切り |
CloudFront-Viewer-Header-Count | リクエストされたヘッダー数 |
その他
2022年11月、JA3フィンガープリントの追加が行われました。同一のアクセス環境であることを把握することができる値ですが、確実性は低いので不正検知程度にとどまります。(Amazon CloudFront が JA3 フィンガープリントヘッダーのサポートを開始)
CloudFront-Forwarded-Proto | プロトコル (HTTP または HTTPS) |
CloudFront-Viewer-Http-Version | HTTP バージョン |
CloudFront-Viewer-JA3-Fingerprint | JA3 フィンガープリント (HTTPS専用) |
CloudFront-Viewer-TLS | SSL/TLS バージョン、暗号、SSL/TLS ハンドシェイク |