CloudFront 응답에 HTTP 보안 헤더를 추가하려면 어떻게 해야 합니까?

최종 업데이트 날짜: 2022년 5월 23일

Amazon CloudFront 응답에 HTTP 보안 헤더를 추가하고 싶습니다. 어떻게 해야 합니까?

간략한 설명

HTTP 보안 헤더는 웹 애플리케이션의 개인정보 보호 및 보안을 개선하고 클라이언트 측의 취약성으로부터 보호합니다. 가장 일반적인 HTTP 보안 헤더는 다음과 같습니다.

CloudFront 응답 헤더 정책을 사용하면 CloudFront의 응답에 하나 이상의 HTTP 보안 헤더를 추가할 수 있습니다.

해결 방법

가장 일반적인 HTTP 보안 헤더에 대해 미리 정의된 값을 포함하는 관리형 보안 헤더 응답 정책을 사용할 수 있습니다. 또는 필요한 CloudFront 동작에 추가할 수 있는 사용자 지정 보안 헤더와 값으로 사용자 지정 응답 헤더 정책을 생성할 수 있습니다.

AWS Console에서 사용자 지정 응답 헤더 정책 생성

  1. CloudFront 콘솔을 엽니다.
  2. 탐색 메뉴에서 정책을 선택합니다. 그런 다음 응답 헤더를 선택합니다.
  3. 응답 헤더 정책 생성을 선택합니다.
  4. 보안 헤더에서 정책에 추가할 각 보안 헤더를 선택합니다. 각 헤더에 필요한 값을 추가하거나 선택합니다.
  5. 사용자 지정 헤더에서 CloudFront가 응답에 추가할 사용자 지정 보안 헤더와 값을 추가합니다. 
  6. 필요에 따라 다른 필드를 입력합니다. 그런 다음 생성을 선택합니다. 

캐시 동작에 응답 헤더 정책 연결

응답 헤더 정책을 생성한 후 CloudFront 배포의 캐시 동작에 연결합니다. 관리형 또는 사용자 지정 보안 헤더 응답 정책을 기존 CloudFront 배포에 연결하려면 다음을 수행합니다.
  1. CloudFront 콘솔을 엽니다.
  2. 업데이트하려는 배포를 선택합니다.
  3. 동작 탭에서 수정할 캐시 동작을 선택합니다. 그런 다음 편집을 선택합니다. 
  4. 응답 헤더 정책에서 SecurityHeadersPolicy를 선택하거나 생성한 사용자 지정 정책을 선택합니다. 
  5. 변경 사항 저장을 선택합니다.

다음은 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==

이 문서가 도움이 되었습니까?


결제 또는 기술 지원이 필요합니까?