CloudFront 배포가 속한 AWS 계정을 확인하려면 어떻게 해야 합니까?

3분 분량
0

Amazon CloudFront 배포가 속한 AWS 계정을 찾고 싶습니다. 어떻게 해야 하나요?

간략한 설명

배포가 속한 AWS 계정에 대한 정보를 찾으려면 ListConflictingAliases 명령을 사용하여 AWS 계정에 대한 정보를 가져옵니다.

먼저 새 CloudFront 배포를 생성해서 SSL 인증서에 연결합니다. 이 SSL 인증서는 찾으려는 AWS 계정에 소속된 CloudFront 배포와 연결된 도메인을 포함해야 합니다.

그런 다음 새 배포의 ID와 더불어 찾으려는 배포와 연결된 대체 도메인 이름을 사용하여 ListConflictingAliases 명령을 실행합니다.

참고: 이 방법을 사용하려면 배포에 대체 도메인 이름이 연결되어 있어야 합니다. 찾으려는 CloudFront 배포에 대체 도메인 이름이 연결되어 있지 않은 경우 AWS Support에 문의하세요.

해결 방법

CloudFront 배포 생성

새 CloudFront 배포를 생성하고 다음을 수행해야 합니다.

  • 찾으려는 AWS 계정에 소속된 CloudFront 배포와 연결된 도메인을 포함하는 SSL 인증서를 연결합니다.
  • 대체 도메인 이름에 도메인 이름을 지정하지 마세요. 이 필드에 값을 지정할 경우 “CNAME already exists” 오류가 발생합니다.

새 배포를 생성하지 않으려는 경우 기존 CloudFront 배포를 사용자 지정 SSL 인증서로 업데이트할 수 있습니다.

ListConflictingAliases 명령 실행

참고: ListConflictingAliases 명령에는 GetDistributionListConflictingAliases 권한이 필요합니다. 소유권을 확인하려면 YourDistributionID에 대한 읽기 권한이 있어야 합니다. 또한 충돌하는 CNAME을 보호하는 인증서가 연결되어 있어야 합니다.

1.    사용자가 생성한 배포에 대한 AWS Identity and Access Management(IAM) 정책에서, API 요청을 수행하는 IAM 사용자 또는 역할에 다음과 같은 리소스 수준 권한을 추가합니다.

DISTRIBUTION-ID에서, 생성한 새 배포의 ID를 입력합니다.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "CloudFrontCnameSwapCrossAcc",
      "Effect": "Allow",
      "Action": [
                "cloudfront:GetDistribution",
                "cloudfront:ListConflictingAliases"
      ],
      "Resource": [
        "arn:aws:cloudfront::123456789:distribution/DISTRIBUTION-ID"
      ]
    }
  ]
}

2.    새 배포에 유효한 인증서가 있는지 확인합니다.

3.    ListConflictingAliases 명령을 실행합니다.

$ aws cloudfront list-conflicting-aliases --distribution-id YourDistributiontID --alias YourCNAME

YourDistributionId에서, AWS 계정에서 생성된 새 배포의 ID를 입력합니다. YourCNAME에서, 찾으려는 CloudFront 배포와 연결된 별칭(대체 도메인 이름)을 입력합니다.

4.    출력에는 CloudFront 배포 목록과 더불어 ListConflictingAliases 명령에 입력한 별칭과 충돌하는 연결된 계정 ID가 제공됩니다.
--alias 파라미터의 도메인 이름은 찾으려는 CloudFront 배포와 연결되어 있습니다. 배포 ID와 연결된 AWS 계정 ID도 출력에 나열됩니다.
예:

$ aws cloudfront list-conflicting-aliases --distribution-id EABCDSXK9UXYZ --alias www.example.com
{
  "ConflictingAliasesList": {
    "MaxItems": 100,
    "Quantity": 1,
    "Items": [
      {
        "Alias": "www.example.com",
        "DistributionId": "*******NOOCXYZ",
        "AccountId": "******091234"
      }
    ]
  }
}

참고: API 게이트웨이의 엣지 최적화 API 엔드포인트 또는 AWS Amplify 관리형 호스팅을 통해 생성된 CloudFront 배포는 AWS 관리형 계정에 의해 관리됩니다. 이 사례에서 출력의 AWS 계정 ID는 AWS 관리형 계정과 관련이 있습니다. API 게이트웨이의 엣지 최적화 API 엔드포인트에 대해 생성된 CloudFront 배포는 리전별 API 게이트웨이 계정 ID 중 하나로 식별할 수 있습니다. 리전별 API 게이트웨이 계정 ID의 전체 목록은 CloudTrail에서 사용자 지정 도메인 이름 생성 로그를 참조하세요.


AWS 공식
AWS 공식업데이트됨 2년 전