CloudFront와 원본 서버 간 암호화 미적용

CloudFront와 사용자 지정 원본 서버 사이에도 HTTPS를 사용하세요.

설명

CloudFront가 사용자 지정 원본 서버에 HTTP로 연결하면, 사용자와 CloudFront 사이가 HTTPS여도 원본 연결 구간은 암호화되지 않습니다.

잠재적 영향

원본 연결을 가로챌 수 있는 주체가 요청이나 응답 데이터를 읽거나 변조할 수 있습니다.

해결 방법

원본이 HTTPS를 지원하도록 인증서를 준비하고 CustomOriginConfig.OriginProtocolPolicy를 https-only로 설정하세요. 인증서 이름과 원본 연결이 정상인지 확인하세요.

예시

예시는 사용자 지정 원본 설정을 발췌한 것입니다. app.example.com을 실제로 접근 가능한 원본 호스트로 바꾸세요. S3 웹사이트 엔드포인트는 HTTPS를 지원하지 않으므로 다른 원본 구성이 필요합니다.

변경 전

yaml
Resources:
  WebDistribution:
    Type: AWS::CloudFront::Distribution
    Properties:
      DistributionConfig:
        Origins:
          - DomainName: app.example.com
            Id: app-origin
            CustomOriginConfig:
              OriginProtocolPolicy: http-only

변경 후

yaml
Resources:
  WebDistribution:
    Type: AWS::CloudFront::Distribution
    Properties:
      DistributionConfig:
        Origins:
          - DomainName: app.example.com
            Id: app-origin
            CustomOriginConfig:
              OriginProtocolPolicy: https-only

참조