Kontoübergreifendes Klonen mit AWS RAM und Amazon Aurora - Amazon Aurora

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Kontoübergreifendes Klonen mit AWS RAM und Amazon Aurora

Wenn Sie AWS Resource Access Manager (AWS RAM) mit Amazon Aurora verwenden, können Sie Aurora-DB-Cluster und -Clones, die zu Ihrem AWS Konto gehören, mit einem anderen AWS Konto oder einer anderen Organisation teilen. Ein solches kontoübergreifendes Klonen ist viel schneller als das Erstellen und Wiederherstellen eines Datenbank-Snapshots. Sie können einen Klon eines Ihrer Aurora-DB-Cluster erstellen und den Klon freigeben. Oder Sie können Ihren Aurora-DB-Cluster mit einem anderen AWS Konto teilen und den Kontoinhaber den Clone erstellen lassen. Welchen Ansatz Sie wählen, hängt von Ihrem Anwendungsfall ab.

Beispielsweise müssen Sie möglicherweise regelmäßig einen Klon Ihrer Finanzdatenbank für das interne Revisionsteam Ihres Unternehmens freigeben. In diesem Fall hat Ihr Prüfungsteam ein eigenes AWS -Konto für die von ihm verwendeten Anwendungen. Sie können dem AWS Konto des Prüfungsteams die Erlaubnis erteilen, auf Ihren Aurora-DB-Cluster zuzugreifen und ihn nach Bedarf zu klonen.

Auf der anderen Seite, wenn ein externer Anbieter Ihre Finanzdaten prüft, ziehen Sie es möglicherweise vor, den Klon selbst zu erstellen. Sie geben dann dem externen Anbieter nur Zugriff auf den Klon.

Sie können auch kontenübergreifendes Klonen verwenden, um viele der gleichen Anwendungsfälle für das Klonen innerhalb desselben AWS Kontos zu unterstützen, z. B. Entwicklung und Testen. Beispielsweise könnte Ihre Organisation unterschiedliche AWS Konten für Produktion, Entwicklung, Tests usw. verwenden. Weitere Informationen finden Sie unter Übersicht über das Aurora-Klonen.

Daher möchten Sie vielleicht einen Clone mit einem anderen Konto teilen oder einem anderen AWS Konto erlauben, Klone Ihrer Aurora-DB-Cluster zu erstellen. AWS Verwenden Sie in beiden Fällen zunächst, AWS RAM um ein Share-Objekt zu erstellen. Vollständige Informationen zur gemeinsamen Nutzung von AWS Ressourcen zwischen AWS Konten finden Sie im AWS RAM Benutzerhandbuch.

Zum Erstellen eines kontoübergreifenden Clones sind Aktionen von dem AWS Konto, dem der ursprüngliche Cluster gehört, und von dem AWS Konto, das den Clone erstellt, erforderlich. Zuerst ändert der ursprüngliche Clusterbesitzer den Cluster, um es einem oder mehreren anderen Konten zu ermöglichen, ihn zu klonen. Wenn sich eines der Konten in einer anderen AWS Organisation befindet, wird eine Einladung zum Teilen AWS generiert. Das andere Konto muss die Einladung annehmen, bevor Sie fortfahren können. Dann kann jedes autorisierte Konto den Cluster klonen. Während dieses Vorgangs wird der Cluster anhand seines eindeutigen Amazon-Ressourcennamens (ARN) identifiziert.

Wie beim Klonen innerhalb desselben AWS Kontos wird zusätzlicher Speicherplatz nur verwendet, wenn die Quelle oder der Klon Änderungen an den Daten vornehmen. Zu diesem Zeitpunkt werden dann Gebühren für die Speicherung erhoben. Wenn der Quellen-Cluster gelöscht wird, werden Speicherkosten gleichmäßig auf die verbleibenden geklonten Cluster verteilt.

Einschränkungen für kontoübergreifendes Klonen

Kontoübergreifendes Aurora-Klonen hat folgende Einschränkungen:

  • Sie können einen Aurora Serverless v1 Cluster nicht für mehrere AWS Konten klonen.

  • Sie können keine Einladungen zu gemeinsam genutzten Ressourcen mit dem anzeigen oder annehmen AWS Management Console. Verwenden Sie die AWS CLI, Amazon oder die AWS RAM Konsole RDSAPI, um Einladungen zu gemeinsam genutzten Ressourcen anzuzeigen und anzunehmen.

  • Sie können nur einen neuen Klon aus einem Klon erstellen, der mit Ihrem AWS Konto geteilt wurde.

  • Sie können keine Ressourcen (Klone oder Aurora-DB-Cluster) teilen, die mit Ihrem AWS Konto geteilt wurden.

  • Sie können maximal 15 kontoübergreifende Klone aus einem einzelnen Aurora-DB-Cluster erstellen.

  • Jeder der 15 kontoübergreifenden Klone muss einem anderen Konto gehören. AWS Das heißt, Sie können innerhalb eines Kontos nur einen kontenübergreifenden Klon eines Clusters erstellen. AWS

  • Nachdem Sie einen Cluster geklont haben, werden der ursprüngliche Cluster und sein Klon als identisch angesehen, um Grenzwerte für kontoübergreifende Klone durchzusetzen. Sie können innerhalb desselben Kontos keine kontenübergreifenden Klone sowohl des ursprünglichen Clusters als auch des geklonten Clusters erstellen. AWS Die Gesamtzahl der kontoübergreifenden Klone für den ursprünglichen Cluster und einen seiner Klone darf 15 nicht überschreiten.

  • Sie können einen Aurora-DB-Cluster nicht mit anderen AWS Konten teilen, es sei denn, der Cluster befindet sich in einem ACTIVE Status.

  • Sie können einen Aurora-DB-Cluster, der mit anderen AWS Konten geteilt wurde, nicht umbenennen.

  • Sie können keinen kontenübergreifenden Klon eines Clusters erstellen, der mit dem RDS Standardschlüssel verschlüsselt ist.

  • Sie können in einem AWS Konto keine unverschlüsselten Klone aus verschlüsselten Aurora-DB-Clustern erstellen, die von einem anderen AWS Konto gemeinsam genutzt wurden. Der Clustereigentümer muss die Erlaubnis zum Zugriff auf den Quellcluster AWS KMS key. Sie können jedoch auch einen anderen Schlüssel verwenden, wenn Sie den Klon erstellen.

Erlauben Sie anderen AWS Konten, Ihren Cluster zu klonen

Um anderen AWS Konten das Klonen eines Clusters zu ermöglichen, dessen Eigentümer Sie sind, legen AWS RAM Sie die Freigabeberechtigung fest. Dadurch wird auch eine Einladung an jedes der anderen Konten gesendet, die sich in einer anderen AWS Organisation befinden.

Informationen zur gemeinsamen Nutzung von Ressourcen, die Ihnen gehören, in der AWS RAM Konsole finden Sie im AWS RAM Benutzerhandbuch unter Gemeinsame Nutzung von Ressourcen, die Ihnen gehören.

Erteilen Sie anderen AWS Konten die Erlaubnis, Ihren Cluster zu klonen

Wenn der Cluster, den Sie gemeinsam nutzen, verschlüsselt ist, teilen Sie auch die AWS KMS key für den Cluster. Sie können Benutzern oder Rollen in einem AWS Konto AWS Identity and Access Management (IAM) erlauben, einen KMS Schlüssel in einem anderen Konto zu verwenden.

Dazu fügen Sie zunächst das externe Konto (Root-Benutzer) zur KMS Schlüsselrichtlinie des Schlüssels hinzu AWS KMS. Sie fügen der Schlüsselrichtlinie nicht die einzelnen Benutzer oder Rollen hinzu, sondern nur das externe Konto, das sie enthält. Sie können nur einen KMS Schlüssel teilen, den Sie selbst erstellen, nicht den RDS Standard-Serviceschlüssel. Informationen zur Zugriffskontrolle für KMS Schlüssel finden Sie unter Authentifizierung und Zugriffskontrolle für AWS KMS.

So gewähren Sie die Berechtigung zum Klonen Ihres Clusters
  1. Melden Sie sich bei der an AWS Management Console und öffnen Sie die RDS Amazon-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Databases (Datenbanken) aus.

  3. Wählen Sie den DB-Cluster aus, den Sie freigeben möchten, um seine Details-Seite anzuzeigen, und wählen Sie dann die Registerkarte Connectivity & security (Konnektivität und Sicherheit) aus.

  4. Geben Sie im Abschnitt DB-Cluster mit anderen AWS Konten teilen die numerische Konto-ID für das AWS Konto ein, dem Sie das Klonen dieses Clusters erlauben möchten. Für ein Konto IDs in derselben Organisation können Sie mit der Eingabe in das Feld beginnen und dann eine Auswahl aus dem Menü treffen.

    Wichtig

    In manchen Fällen möchten Sie vielleicht, dass ein Konto, das sich nicht in derselben AWS -Organisation befindet wie Ihr Konto, einen Cluster klont. In diesen Fällen meldet die Konsole aus Sicherheitsgründen nicht, wer diese Konto-ID besitzt oder ob das Konto existiert.

    Seien Sie vorsichtig bei der Eingabe von Kontonummern, die sich nicht in derselben AWS Organisation wie Ihr AWS Konto befinden. Überprüfen Sie sofort, ob Sie die Freigabe für das beabsichtigte Konto erteilt haben.

  5. Überprüfen Sie auf der Bestätigungsseite, dass die von Ihnen angegebene Konto-ID richtig ist. Geben Sie im Bestätigungsfeld share ein, um dies zu bestätigen.

    Auf der Detailseite wird unter Konten, mit denen dieser DB-Cluster gemeinsam genutzt wird, ein Eintrag mit der angegebenen AWS Konto-ID angezeigt. Die Spalte Status zeigt ursprünglich den Status Pending (Ausstehend) an.

  6. Wenden Sie sich an den Besitzer des anderen AWS Kontos, oder melden Sie sich bei diesem Konto an, wenn Sie beide besitzen. Weisen Sie den Besitzer des anderen Kontos an, die Freigabeeinladung anzunehmen und den DB-Cluster zu klonen, wie nachfolgend beschrieben.

So gewähren Sie die Berechtigung zum Klonen Ihres Clusters
  1. Tragen Sie die Daten für die erforderlichen Parameter zusammen. Sie benötigen die ARN für Ihren Cluster und die numerische ID für das andere AWS Konto.

  2. Führen Sie den AWS RAM CLI Befehl aus create-resource-share.

    Für LinuxmacOS, oderUnix:

    aws ram create-resource-share --name descriptive_name \ --region region \ --resource-arns cluster_arn \ --principals other_account_ids

    Windows:

    aws ram create-resource-share --name descriptive_name ^ --region region ^ --resource-arns cluster_arn ^ --principals other_account_ids

    Um mehrere Konten IDs für den --principals Parameter einzubeziehen, IDs trennen Sie diese durch Leerzeichen voneinander. Um anzugeben, ob sich das zulässige Konto außerhalb Ihrer AWS Organisation befinden IDs kann, geben Sie den --no-allow-external-principals Parameter --allow-external-principals oder für ancreate-resource-share.

So gewähren Sie die Berechtigung zum Klonen Ihres Clusters
  1. Tragen Sie die Daten für die erforderlichen Parameter zusammen. Sie benötigen den ARN für Ihren Cluster und die numerische ID für das andere AWS Konto.

  2. Rufen Sie den AWS RAM API Vorgang CreateResourceShareauf und geben Sie die folgenden Werte an:

    • Geben Sie die Konto-ID für ein oder mehrere AWS Konten als principals Parameter an.

    • Geben Sie ARN für einen oder mehrere Aurora-DB-Cluster als resourceArns Parameter an.

    • Geben Sie an, ob sich das zulässige Konto außerhalb Ihrer AWS Organisation befinden IDs kann, indem Sie einen booleschen Wert für den allowExternalPrincipals Parameter angeben.

Einen Cluster neu erstellen, der den Standardschlüssel verwendet RDS

Wenn der verschlüsselte Cluster, den Sie gemeinsam nutzen möchten, den RDS Standardschlüssel verwendet, stellen Sie sicher, dass Sie den Cluster neu erstellen. Erstellen Sie dazu einen manuellen Snapshot Ihres DB-Clusters, verwenden Sie eine AWS KMS key, und stellen Sie den Cluster dann in einem neuen Cluster wieder her. Geben Sie dann den neuen Cluster frei. Führen Sie die folgenden Schritte aus, um diesen Vorgang durchzuführen.

Um einen verschlüsselten Cluster neu zu erstellen, der den Standardschlüssel verwendet RDS
  1. Melden Sie sich bei der an AWS Management Console und öffnen Sie die RDS Amazon-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich die Option Snapshots aus.

  3. Wählen Sie Ihren Snapshot aus.

  4. Wählen Sie unter Actions (Aktionen) die Option Copy Snapshot (Snapshot kopieren) und anschließend Enable encryption (Verschlüsselung aktivieren) aus.

  5. Wählen Sie für AWS KMS key den neuen Verschlüsselungscode, den Sie verwenden möchten.

  6. Stellen Sie den kopierten Snapshot wieder her. Eine Schritt-für-Schritt-Anleitung hierzu finden Sie unter Wiederherstellen aus einem DB-Cluster-Snapshot. Die neue DB-Instance verwendet Ihren neuen Verschlüsselungsschlüssel.

  7. (Optional) Löschen Sie den alten DB-Cluster, wenn Sie ihn nicht mehr benötigen. Eine Schritt-für-Schritt-Anleitung hierzu finden Sie unter Löschen eines DB-Cluster-Snapshots. Bevor Sie dies tun, überprüfen Sie, ob Ihr neuer Cluster über alle notwendigen Daten verfügt und ob Ihre Anwendung erfolgreich darauf zugreifen kann.

Prüfen Sie, ob ein Cluster, den Sie besitzen, mit anderen AWS Konten geteilt wird

Sie können überprüfen, ob andere Benutzer die Berechtigung für die Freigabe eines Clusters haben. Dies kann hilfreich sein, um zu wissen, ob der Cluster sich dem Limit für die maximale Anzahl an kontoübergreifenden Klonen nähert.

Die Verfahren zur gemeinsamen Nutzung von Ressourcen mithilfe der AWS RAM Konsole finden Sie im AWS RAM Benutzerhandbuch unter Gemeinsame Nutzung von Ressourcen, die Ihnen gehören.

Um herauszufinden, ob ein Cluster, den Sie besitzen, mit anderen AWS Konten gemeinsam genutzt wird
  • Rufen Sie den AWS RAM CLI Befehl list-principalsauf und verwenden Sie dabei Ihre Konto-ID als Ressourcenbesitzer und die ARN Ihres Clusters als RessourceARN. Sie können mit dem folgenden Befehl alle Freigaben anzeigen. Die Ergebnisse geben an, welche AWS Konten den Cluster klonen dürfen.

    aws ram list-principals \ --resource-arns your_cluster_arn \ --principals your_aws_id
Um herauszufinden, ob ein Cluster, den Sie besitzen, mit anderen AWS Konten geteilt wird
  • Rufen Sie die AWS RAM API Operation auf ListPrincipals. Verwenden Sie Ihre Konto-ID als Ressourcenbesitzer und die ARN Ihres Clusters als RessourceARN.

Einen Cluster klonen, der einem anderen AWS Konto gehört

Um einen Cluster zu klonen, der einem anderen AWS Konto gehört, holen Sie sich AWS RAM die Erlaubnis ein, den Klon zu erstellen. Wenn Sie die erforderliche Berechtigung haben, verwenden Sie das Standardverfahren zum Klonen eines Aurora-Clusters.

Sie können auch überprüfen, ob es sich bei einem Cluster, den Sie besitzen, um einen Klon eines Clusters handelt, der einem anderen AWS Konto gehört.

Informationen zu den Verfahren für die Arbeit mit Ressourcen, die anderen Benutzern gehören, AWS RAM finden Sie im AWS RAM Benutzerhandbuch unter Zugreifen auf Ressourcen, die mit Ihnen geteilt wurden.

Einladungen zum Klonen von Clustern anzeigen, die anderen AWS Konten gehören

Um mit Einladungen zum Klonen von Clustern zu arbeiten, die AWS Konten in anderen AWS Organisationen gehören AWS CLI, verwenden Sie die, die AWS RAM Konsole oder die AWS RAM API. Derzeit können Sie dieses Verfahren nicht mit der RDS Amazon-Konsole ausführen.

Informationen dazu, wie Sie mit Einladungen in der AWS RAM Konsole funktionieren, finden Sie im AWS RAM Benutzerhandbuch unter Zugreifen auf mit Ihnen geteilte Ressourcen.

Um Einladungen zum Klonen von Clustern anzuzeigen, die anderen AWS Konten gehören
  1. Führen Sie den AWS RAM CLI Befehl aus get-resource-share-invitations.

    aws ram get-resource-share-invitations --region region_name

    Die Ergebnisse des vorausgehenden Befehls zeigen alle Einladungen, Cluster zu klonen, an, einschließlich aller Einladungen, die Sie bereits angenommen oder abgelehnt haben.

  2. (Optional) Filtern Sie die Liste, um nur die Einladungen anzuzeigen, die eine Aktion Ihrerseits erforderlich machen. Fügen Sie dafür den -Parameter hinz --query 'resourceShareInvitations[?status==`PENDING`]'.

Um Einladungen zum Klonen von Clustern anzuzeigen, die anderen AWS Konten gehören
  1. Rufen Sie die AWS RAM API Operation auf GetResourceShareInvitations. Diese Operation gibt all diese Einladungen zurück, einschließlich derer, die Sie bereits angenommen oder abgelehnt haben.

  2. (Optional) Suchen Sie nur die Einladungen, die eine Aktion Ihrerseits erforderlich machen, indem Sie das Rückgabefeld resourceShareAssociations für den status-Wert PENDING aktivieren.

Annahme von Einladungen zur gemeinsamen Nutzung von Clustern, die anderen AWS Konten gehören

Sie können Einladungen zur gemeinsamen Nutzung von Clustern annehmen, die anderen AWS Konten gehören, die sich in anderen AWS Organisationen befinden. Um mit diesen Einladungen zu arbeiten AWS CLI, verwenden Sie die RDSAPIs, AWS RAM und oder die AWS RAM Konsole. Derzeit können Sie dieses Verfahren nicht mit der RDS Konsole ausführen.

Informationen zur Verwendung von Einladungen in der AWS RAM Konsole finden Sie im AWS RAM Benutzerhandbuch unter Zugreifen auf mit Ihnen geteilte Ressourcen.

So nehmen Sie eine Einladung zur gemeinsamen Nutzung eines Clusters von einem anderen AWS Konto aus an
  1. Suchen Sie nach der Einladung, ARN indem Sie den AWS RAM CLI Befehl ausführen get-resource-share-invitations, wie oben gezeigt.

  2. Nehmen Sie die Einladung an, indem AWS RAM CLI Sie den Befehl aufrufen accept-resource-share-invitation, wie im Folgenden gezeigt.

    Für LinuxmacOS, oderUnix:

    aws ram accept-resource-share-invitation \ --resource-share-invitation-arn invitation_arn \ --region region

    Windows:

    aws ram accept-resource-share-invitation ^ --resource-share-invitation-arn invitation_arn ^ --region region
So nehmen Sie Einladung zur Freigabe eines Clusters, der jemand anderem gehört, an
  1. Finden Sie die Einladung, ARN indem Sie den AWS RAM API Vorgang aufrufen GetResourceShareInvitations, wie oben gezeigt.

  2. Übergeben Sie das ARN als resourceShareInvitationArn Parameter an die RDS API Operation AcceptResourceShareInvitation.

Einen Aurora-Cluster klonen, der einem anderen AWS Konto gehört

Nachdem Sie die Einladung von dem AWS Konto angenommen haben, dem der DB-Cluster gehört, wie oben gezeigt, können Sie den Cluster klonen.

Um einen Aurora-Cluster zu klonen, der einem anderen AWS Konto gehört
  1. Melden Sie sich bei der an AWS Management Console und öffnen Sie die RDS Amazon-Konsole unter https://console.aws.amazon.com/rds/.

  2. Wählen Sie im Navigationsbereich Databases (Datenbanken) aus.

    Ganz oben in der Datenbankliste sollten Sie mindestens ein Element mit dem Role (Rolle)-Wert Shared from account #account_id sehen. Aus Sicherheitsgründen können Sie nur eingeschränkte Informationen über die ursprünglichen Cluster sehen. Die Eigenschaften, die Sie sehen können, sind solche wie etwa die Datenbank-Engine und -Version, die in Ihrem geklonten Cluster identisch sein müssen.

  3. Wählen Sie den Cluster aus, den Sie vorhaben zu klonen.

  4. Wählen Sie für Actions (Aktionen) Create clone (Klon erstellen) aus.

  5. Gehen Sie entsprechend dem Verfahren unter Konsole vor, um die Einrichtung des geklonten Clusters durchzuführen.

  6. Aktivieren Sie je nach Bedarf die Verschlüsselung für den geklonten Cluster. Wenn der Cluster, den Sie klonen, verschlüsselt ist, müssen Sie die Verschlüsselung für den geklonten Cluster aktivieren. Das AWS Konto, das den Cluster mit Ihnen geteilt hat, muss auch den KMS Schlüssel teilen, der zur Verschlüsselung des Clusters verwendet wurde. Sie können denselben KMS Schlüssel oder Ihren eigenen KMS Schlüssel verwenden, um den Clone zu verschlüsseln. Sie können keinen kontenübergreifenden Klon für einen Cluster erstellen, der mit dem KMS Standardschlüssel verschlüsselt ist.

    Das Konto, dem der Verschlüsselungsschlüssel gehört, muss dem Zielkonto die Berechtigung zur Verwendung des Schlüssels mithilfe einer Schlüsselrichtlinie erteilen. Dieser Vorgang ist ähnlich dem Verfahren, mit dem verschlüsselte Snapshots freigegeben werden, mithilfe einer Schlüsselrichtlinie, die dem Zielkonto die Berechtigung zur Verwendung des Schlüssels gewährt.

Um einen Aurora-Cluster zu klonen, der einem anderen AWS Konto gehört
  1. Nehmen Sie die Einladung von dem AWS Konto an, dem der DB-Cluster gehört, wie oben gezeigt.

  2. Klonen Sie den Cluster, indem Sie den gesamten ARN Quellcluster im source-db-cluster-identifier Parameter des RDS CLI Befehls angeben restore-db-cluster-to-point-in-time, wie im Folgenden gezeigt.

    Wenn der ARN übergebene Cluster source-db-cluster-identifier nicht gemeinsam genutzt wurde, wird derselbe Fehler zurückgegeben, als ob der angegebene Cluster nicht existiert.

    Für LinuxmacOS, oderUnix:

    aws rds restore-db-cluster-to-point-in-time \ --source-db-cluster-identifier=arn:aws:rds:arn_details \ --db-cluster-identifier=new_cluster_id \ --restore-type=copy-on-write \ --use-latest-restorable-time

    Windows:

    aws rds restore-db-cluster-to-point-in-time ^ --source-db-cluster-identifier=arn:aws:rds:arn_details ^ --db-cluster-identifier=new_cluster_id ^ --restore-type=copy-on-write ^ --use-latest-restorable-time
  3. Wenn der Cluster, den Sie klonen, verschlüsselt ist, verschlüsseln Sie Ihren geklonten Cluster, indem Sie einen kms-key-id-Parameter einfügen. Dieser kms-key-id Wert kann derselbe sein, der zum Verschlüsseln des ursprünglichen DB-Clusters verwendet wurde, oder Ihr eigener KMS Schlüssel. Ihr Konto muss über die Berechtigung zum Verwenden dieses Verschlüsselungsschlüssels verfügen.

    Für LinuxmacOS, oderUnix:

    aws rds restore-db-cluster-to-point-in-time \ --source-db-cluster-identifier=arn:aws:rds:arn_details \ --db-cluster-identifier=new_cluster_id \ --restore-type=copy-on-write \ --use-latest-restorable-time \ --kms-key-id=arn:aws:kms:arn_details

    Windows:

    aws rds restore-db-cluster-to-point-in-time ^ --source-db-cluster-identifier=arn:aws:rds:arn_details ^ --db-cluster-identifier=new_cluster_id ^ --restore-type=copy-on-write ^ --use-latest-restorable-time ^ --kms-key-id=arn:aws:kms:arn_details

    Das Konto, dem der Verschlüsselungsschlüssel gehört, muss dem Zielkonto die Berechtigung zur Verwendung des Schlüssels mithilfe einer Schlüsselrichtlinie erteilen. Dieser Vorgang ist ähnlich dem Verfahren, mit dem verschlüsselte Snapshots freigegeben werden, mithilfe einer Schlüsselrichtlinie, die dem Zielkonto die Berechtigung zur Verwendung des Schlüssels gewährt. Nachfolgend sehen Sie ein Beispiel für eine Schlüsselrichtlinie.

    { "Id": "key-policy-1", "Version": "2012-10-17", "Statement": [ { "Sid": "Allow use of the key", "Effect": "Allow", "Principal": {"AWS": [ "arn:aws:iam::account_id:user/KeyUser", "arn:aws:iam::account_id:root" ]}, "Action": [ "kms:CreateGrant", "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }, { "Sid": "Allow attachment of persistent resources", "Effect": "Allow", "Principal": {"AWS": [ "arn:aws:iam::account_id:user/KeyUser", "arn:aws:iam::account_id:root" ]}, "Action": [ "kms:CreateGrant", "kms:ListGrants", "kms:RevokeGrant" ], "Resource": "*", "Condition": {"Bool": {"kms:GrantIsForAWSResource": true}} } ] }
Anmerkung

Der point-in-time AWS CLI Befehl restore-db-cluster-to- stellt nur den DB-Cluster wieder her, nicht die DB-Instances für diesen DB-Cluster. Rufen Sie den create-db-instanceBefehl auf, um DB-Instances für den wiederhergestellten DB-Cluster zu erstellen. Geben Sie die ID des wiederhergestellten DB-Clusters in --db-cluster-identifier an.

Sie können DB-Instances erst dann erstellen, wenn der Befehl restore-db-cluster-to-point-in-time abgeschlossen ist und der DB-Cluster verfügbar ist.

Um einen Aurora-Cluster zu klonen, der einem anderen AWS Konto gehört
  1. Nehmen Sie die Einladung von dem AWS Konto an, dem der DB-Cluster gehört, wie oben gezeigt.

  2. Klonen Sie den Cluster, indem Sie den gesamten ARN Quellcluster im SourceDBClusterIdentifier Parameter des RDS API Vorgangs angeben RestoreDBClusterToPointInTime.

    Wenn der ARN übergebene Cluster SourceDBClusterIdentifier nicht gemeinsam genutzt wurde, wird derselbe Fehler zurückgegeben, als ob der angegebene Cluster nicht existiert.

  3. Wenn der Cluster, den Sie klonen, verschlüsselt ist, fügen Sie einen KmsKeyId-Parameter ein, um Ihren geklonten Cluster zu verschlüsseln. Dieser kms-key-id Wert kann derselbe sein, der zum Verschlüsseln des ursprünglichen DB-Clusters verwendet wurde, oder Ihr eigener KMS Schlüssel. Ihr Konto muss über die Berechtigung zum Verwenden dieses Verschlüsselungsschlüssels verfügen.

    Wenn Sie ein Volume klonen, muss das Zielkonto die Berechtigung haben, den Verschlüsselungsschlüssel zu verwenden, der zum Verschlüsseln des Quellclusters verwendet wird. Aurora verschlüsselt den neuen geklonten Cluster mit dem in KmsKeyId angegebenen Verschlüsselungsschlüssel.

    Das Konto, dem der Verschlüsselungsschlüssel gehört, muss dem Zielkonto die Berechtigung zur Verwendung des Schlüssels mithilfe einer Schlüsselrichtlinie erteilen. Dieser Vorgang ist ähnlich dem Verfahren, mit dem verschlüsselte Snapshots freigegeben werden, mithilfe einer Schlüsselrichtlinie, die dem Zielkonto die Berechtigung zur Verwendung des Schlüssels gewährt. Nachfolgend sehen Sie ein Beispiel für eine Schlüsselrichtlinie.

    { "Id": "key-policy-1", "Version": "2012-10-17", "Statement": [ { "Sid": "Allow use of the key", "Effect": "Allow", "Principal": {"AWS": [ "arn:aws:iam::account_id:user/KeyUser", "arn:aws:iam::account_id:root" ]}, "Action": [ "kms:CreateGrant", "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }, { "Sid": "Allow attachment of persistent resources", "Effect": "Allow", "Principal": {"AWS": [ "arn:aws:iam::account_id:user/KeyUser", "arn:aws:iam::account_id:root" ]}, "Action": [ "kms:CreateGrant", "kms:ListGrants", "kms:RevokeGrant" ], "Resource": "*", "Condition": {"Bool": {"kms:GrantIsForAWSResource": true}} } ] }
Anmerkung

Die estoreDBClusterToPointInTimeRDSAPIR-Operation stellt nur den DB-Cluster wieder her, nicht die DB-Instances für diesen DB-Cluster. Um DB-Instances für den wiederhergestellten DB-Cluster zu erstellen, rufen Sie den reateDBInstanceRDSAPIC-Vorgang auf. Geben Sie die ID des wiederhergestellten DB-Clusters in DBClusterIdentifier an. Sie können DB-Instances erst erstellen, nachdem die Operation RestoreDBClusterToPointInTime abgeschlossen ist und der DB-Cluster verfügbar ist.

Überprüfen, ob ein DB-Cluster ein kontoübergreifender Klon ist

Das DBClusters-Objekt gibt an, ob der jeweilige Cluster ein kontoübergreifender Klon ist. Sie können die Cluster sehen, für deren Klonen Sie berechtigt sind, indem Sie die include-shared Option verwenden, wenn Sie den RDS CLI Befehl describe-db-clustersausführen. Sie können jedoch die meisten Konfigurationsdetails für solche Cluster nicht anzeigen.

Überprüfen, ob ein DB-Cluster ein kontoübergreifender Klon ist
  • Rufen Sie den RDS CLI Befehl auf describe-db-clusters.

    Das folgende Beispiel zeigt, wie tatsächliche oder potenzielle kontoübergreifende Klon-DB-Cluster in der describe-db-clusters-Ausgabe angezeigt werden. Bei vorhandenen Clustern, die Ihrem AWS Konto gehören, gibt das CrossAccountClone Feld an, ob es sich bei dem Cluster um einen Klon eines DB-Clusters handelt, der einem anderen AWS Konto gehört.

    In einigen Fällen kann ein Eintrag in dem DBClusterArn Feld eine andere AWS Kontonummer als Ihre haben. In diesem Fall steht dieser Eintrag für einen Cluster, der einem anderen AWS Konto gehört und den Sie klonen können. Solche Einträge haben wenige andere Felder als DBClusterArn. Wenn Sie einen geklonten Cluster erstellen, geben Sie dieselben StorageEncrypted-, Engine- und EngineVersion-Werte wie im Original-Cluster an.

    $aws rds describe-db-clusters --include-shared --region us-east-1 { "DBClusters": [ { "EarliestRestorableTime": "2023-02-01T21:17:54.106Z", "Engine": "aurora-mysql", "EngineVersion": "8.0.mysql_aurora.3.02.0", "CrossAccountClone": false, ... }, { "EarliestRestorableTime": "2023-02-09T16:01:07.398Z", "Engine": "aurora-mysql", "EngineVersion": "8.0.mysql_aurora.3.02.0", "CrossAccountClone": true, ... }, { "StorageEncrypted": false, "DBClusterArn": "arn:aws:rds:us-east-1:12345678:cluster:cluster-abcdefgh", "Engine": "aurora-mysql", "EngineVersion": "8.0.mysql_aurora.3.02.0 ] }
Überprüfen, ob ein DB-Cluster ein kontoübergreifender Klon ist
  • Rufen Sie die RDS API Operation D aufescribeDBClusters.

    Bei vorhandenen Clustern, die Ihrem AWS Konto gehören, gibt das CrossAccountClone Feld an, ob es sich bei dem Cluster um einen Klon eines DB-Clusters handelt, der einem anderen AWS Konto gehört. Einträge mit einer anderen AWS Kontonummer im DBClusterArn Feld stehen für Cluster, die Sie klonen können und die anderen AWS Konten gehören. Diese Einträge haben wenige andere Felder als DBClusterArn. Wenn Sie einen geklonten Cluster erstellen, geben Sie dieselben StorageEncrypted-, Engine- und EngineVersion-Werte wie im Original-Cluster an.

    Das folgende Beispiel zeigt einen Rückgabewert, der sowohl tatsächliche als auch potenzielle geklonte Cluster zeigt.

    { "DBClusters": [ { "EarliestRestorableTime": "2023-02-01T21:17:54.106Z", "Engine": "aurora-mysql", "EngineVersion": "8.0.mysql_aurora.3.02.0", "CrossAccountClone": false, ... }, { "EarliestRestorableTime": "2023-02-09T16:01:07.398Z", "Engine": "aurora-mysql", "EngineVersion": "8.0.mysql_aurora.3.02.0", "CrossAccountClone": true, ... }, { "StorageEncrypted": false, "DBClusterArn": "arn:aws:rds:us-east-1:12345678:cluster:cluster-abcdefgh", "Engine": "aurora-mysql", "EngineVersion": "8.0.mysql_aurora.3.02.0" } ] }