CloudFront 지리적 제한 필요성 점검

국가별 배포 제한이 필요한지 검토하고, 필요한 경우 CloudFront 지리적 제한과 별도 인증·오리진 접근 제어를 적용하세요.

설명

CloudFront 지리적 제한은 접속 IP의 지리적 위치를 기준으로 국가별 콘텐츠 접근을 제어합니다. 라이선스나 서비스 정책상 배포 지역을 제한해야 할 때 유용하지만, 전 세계 공개가 의도된 서비스에서는 제한을 사용하지 않을 수 있습니다.

이 기능은 사용자 신원이나 실제 체류 위치를 보장하지 않으며 인증과 오리진 접근 제한을 대신하지 않습니다.

잠재적 영향

필요한 국가 제한이 없으면 허용 지역 밖에서도 콘텐츠에 접근할 수 있습니다. 반대로 잘못된 목록은 정상 사용자 접근을 차단할 수 있습니다.

해결 방법

서비스의 국가별 제공 요구를 확인하고 필요한 경우 Restrictions.GeoRestriction에 적절한 허용 또는 차단 목록을 설정하세요. 실제 접속 결과와 오리진 직접 접근을 확인하고 인증 등 다른 통제도 유지하세요.

예시

지리적 제한만 비교하는 배포 발췌입니다. 실제 배포에 필요한 오리진·캐시 동작 등은 생략되어 있으며, 국가 코드는 서비스 정책에 맞게 선택해야 합니다.

변경 전

yaml
AWSTemplateFormatVersion: '2010-09-09'
Resources:
  myDistribution:
    Type: AWS::CloudFront::Distribution
    Properties:
      DistributionConfig:
        Logging:
          IncludeCookies: 'false'
          Bucket: mylogs.s3.amazonaws.com
          Prefix: myprefix
        Restrictions:
          GeoRestriction:
            RestrictionType: none
        ViewerCertificate:
          CloudFrontDefaultCertificate: 'true'

RestrictionType: none은 국가별 접근 제한을 적용하지 않습니다.

변경 후

yaml
AWSTemplateFormatVersion: '2010-09-09'
Resources:
  myDistribution:
    Type: AWS::CloudFront::Distribution
    Properties:
      DistributionConfig:
        Logging:
          IncludeCookies: 'false'
          Bucket: mylogs.s3.amazonaws.com
          Prefix: myprefix
        Restrictions:
          GeoRestriction:
            RestrictionType: whitelist
            Locations:
            - AQ
            - CV
        ViewerCertificate:
          CloudFrontDefaultCertificate: 'true'

whitelist에 AQ와 CV를 지정합니다. 이는 예시 국가 목록이며, 모든 서비스에 권장되는 목록은 아닙니다.

참조