Direkt zum Inhalt

Wie finde ich heraus, zu welchem AWS-Konto eine CloudFront-Distribution gehört?

Lesedauer: 3 Minute
0

Ich möchte das AWS-Konto finden, zu dem eine Amazon-CloudFront-Distribution gehört.

Kurzbeschreibung

Um Informationen über ein AWS-Konto zu finden, zu dem eine Distribution gehört, verwende den Befehl ListConflictingAliases, um Informationen über das AWS-Konto abzurufen.

Erstelle zunächst eine neue CloudFront-Distribution und verknüpfe sie mit einem SSL-Zertifikat. Dieses SSL-Zertifikat muss die Domain abdecken, die mit der CloudFront-Distribution verknüpft ist, deren AWS-Konto du suchst.

Führe dann den ListConflictingAliases-Befehl aus. Verwende die ID der neuen Distribution und den alternativen Domainnamen, der der Distribution zugeordnet ist, die du finden möchtest.

Hinweis: Um diese Methode verwenden zu können, muss der Distribution ein alternativer Domainname zugeordnet sein. Wenn der CloudFront-Distribution, die du suchst, kein alternativer Domainname zugeordnet ist, wende dich an den AWS-Support.

Lösung

Eine CloudFront-Distribution erstellen

Erstelle eine neue CloudFront-Distribution. Gehe beim Erstellen der Distribution wie folgt vor:

  • Ordne ein SSL-Zertifikat zu, das die Domain abdeckt, die mit der CloudFront-Distribution verknüpft ist, deren AWS-Konto du suchst.
  • Gib im Feld Alternate Domain Name (Alternativer Domainname) keinen Domainnamen an. Ein Wert in diesem Feld verursacht den Fehler „CNAME already exists“.

Wenn du keine neue Distribution erstellen möchtest, kannst du eine vorhandene CloudFront-Distribution mit einem benutzerdefinierten SSL-Zertifikat aktualisieren.

Den ListConflictingAliases-Befehl ausführen

Hinweis: Für den ListConflictingAliases-Befehl sind die Berechtigungen GetDistribution und ListConflictingAliases erforderlich. Um die Eigentümerschaft zu überprüfen, musst du Lesezugriff auf YourDistributionID haben. Außerdem muss dir ein Zertifikat zugeordnet sein, das den konfliktverursachenden CNAME schützt.

  1. Füge in der AWS Identity and Access Management (IAM)-Richtlinie für die von dir erstellte Distribution die folgenden Berechtigungen auf Ressourcenebene hinzu. Erteile dem/der IAM-Benutzer:in oder der IAM-Rolle, der/die die API-Anfrage stellt, die Berechtigungen. Gib für DISTRIBUTION-ID die ID der neuen Distribution ein, die du erstellt hast.

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Sid": "CloudFrontCnameSwapCrossAcc",
          "Effect": "Allow",
          "Action": [
                    "cloudfront:GetDistribution",
                    "cloudfront:ListConflictingAliases"
          ],
          "Resource": [
            "arn:aws:cloudfront::123456789:distribution/DISTRIBUTION-ID"
          ]
        }
      ]
    }
  2. Stelle sicher, dass die neue Distribution über ein gültiges Zertifikat verfügt.

  3. Führe den ListConflictingAliases-Befehl aus. Gib für YourDistributionId die ID der neuen Distribution ein, die in deinem AWS-Konto erstellt wurde. Gib für YourCNAME den Alias (alternativen Domainnamen) ein, der der CloudFront-Distribution zugeordnet ist, die du suchst.

    aws cloudfront list-conflicting-aliases --distribution-id YourDistributiontID --alias YourCNAME
  4. Die Ausgabe enthält eine Liste der CloudFront-Distributionen und die zugehörige Konto-ID, die mit dem Alias in Konflikt steht, den du im ListConflictingAliases-Befehl eingegeben hast.
    Der Domainname im Parameter --alias ist mit der CloudFront-Distribution verknüpft, die du zu finden versuchst. Die mit der Distribution-ID verknüpfte AWS-Konto-ID ist ebenfalls in der Ausgabe aufgeführt.
    Zum Beispiel:

    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"
          }
        ]
      }
    }

Hinweis: Verwende das von AWS verwaltete Konto, um CloudFront-Distributionen zu verwalten, die du über einen Edge-optimierten API-Endpunkt in API Gateway oder über von AWS Amplify verwaltetes Hosting erstellst. In diesem Fall bezieht sich die AWS-Konto-ID in der Ausgabe auf das von AWS verwaltete Konto. CloudFront-Distributionen, die du für einen Edge-optimierten API-Endpunkt in API Gateway erstellst, haben eine regionsspezifische API-Gateway-Konto-ID. Eine vollständige Liste der regionsspezifischen API-Gateway-Konto-IDs findest du unter Log custom domain name creation in CloudTrail (Protokollieren der Erstellung benutzerdefinierter Domainnamen in CloudTrail).

AWS OFFICIALAktualisiert vor 6 Monaten