Amazon CloudFront のレスポンスに HTTP セキュリティヘッダーを追加したいと思っています。
簡単な説明
HTTP セキュリティヘッダーはウェブアプリケーションのプライバシーとセキュリティを向上させ、脆弱性から保護します。一般的な HTTP セキュリティヘッダーについては、次のリストを参照してください。
CloudFront の応答ヘッダーポリシーでは、CloudFront からの応答には、1 つ以上の HTTP セキュリティヘッダーを追加できます。
解決策
最も一般的な HTTP セキュリティヘッダーには、事前定義値を含むマネージド応答ヘッダーポリシーを使用できます。または、カスタムセキュリティヘッダーと値を含むカスタムレスポンスヘッダーポリシーを作成し、必要な CloudFront の動作に追加することもできます。
応答ヘッダーポリシーをキャッシュ動作にアタッチする
応答ヘッダーポリシーを作成し、CloudFront ディストリビューションのキャッシュ動作にアタッチします。マネージドまたはカスタムのセキュリティヘッダー応答ポリシーを既存の CloudFront ディストリビューションにアタッチするには、次の手順を実行します。
- CloudFront コンソールを開きます。
- 更新するディストリビューションを選択します。
- [動作] タブで変更するキャッシュ動作を選択します。次に、[編集] を選択します。
- [応答ヘッダーポリシー] で [SecurityHeadersPolicy] を選択するか、作成したカスタムポリシーを選択します。
- [変更を保存] を選択します。
HTTP セキュリティ応答ヘッダーを含む CloudFront 応答の例を次に示します。
curl -I https://dxxxxxxxbai33q.cloudfront.net
HTTP/2 200
content-type: text/html
content-length: 9850
vary: Accept-Encoding
date: xxxxxxxxx
last-modified: xxxxxxx
etag: "c59c5ef71f3350489xxxxxxxxxx"
x-amz-server-side-encryption: AES256
cache-control: no-store, no-cache, private
x-amz-version-id: null
accept-ranges: bytes
server: AmazonS3
x-xss-protection: 1; mode=block
x-frame-options: SAMEORIGIN
referrer-policy: strict-origin-when-cross-origin
x-content-type-options: nosniff
strict-transport-security: max-age=31536000
x-cache: Miss from cloudfront
via: 1.1 12142717248e0e7148a5c1a9151ab918.cloudfront.net (CloudFront)
x-amz-cf-pop: BOS50-C3
x-amz-cf-id: nHNANTZYdkQkE5BmsqlisPTiodFhVCK-Sf9Zp4iJzNs04eWi1_hEig==
CloudFront コンソールからカスタム応答ヘッダーポリシーを作成する
- CloudFront コンソールを開きます。
- ナビゲーションメニューから**[ポリシー]を選択します。** 次に、**[応答ヘッダー]**を選択します。
- [応答ヘッダーポリシーの作成] を選択します。
- [セキュリティヘッダー] では、ポリシーに追加する各セキュリティヘッダーを選択します。各ヘッダーに必要な値を追加または選択します。
- [カスタムヘッダー] では、CloudFront の応答に追加するカスタムセキュリティヘッダーと値を追加します。
- 必要に応じて他のフィールドに入力してください。次に、**[作成]**を選択します。