Einrichten des Zugriffs auf einen Amazon S3-Bucket - 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.

Einrichten des Zugriffs auf einen Amazon S3-Bucket

Sie identifizieren den Amazon-S3-Bucket und gewähren dem Snapshot die Berechtigung, auf den Bucket zuzugreifen.

Identifizieren des Amazon S3-Buckets, in den exportiert werden soll

Identifizieren Sie den Amazon S3-Bucket, in den der DB-Snapshot exportiert werden soll. Verwenden Sie einen vorhandenen S3-Bucket oder erstellen Sie einen neuen S3-Bucket.

Anmerkung

Der S3-Bucket, in den exportiert werden soll, muss sich in derselben AWS Region wie der Snapshot befinden.

Weitere Informationen zur Arbeit mit Amazon S3-Buckets finden Sie im Amazon Simple Storage Service User Guide:

Bereitstellen des Zugriffs auf einen Amazon S3 S3-Bucket mithilfe einer IAM Rolle

Bevor Sie DB-Snapshot-Daten nach Amazon S3 exportieren, geben Sie den Snapshot-Exportaufgaben Schreibzugriffsrechte auf den Amazon S3-Bucket.

Um diese Berechtigung zu erteilen, erstellen Sie eine IAM Richtlinie, die Zugriff auf den Bucket gewährt. Erstellen Sie dann eine IAM Rolle und fügen Sie die Richtlinie der Rolle hinzu. Später können Sie die IAM Rolle Ihrer Snapshot-Exportaufgabe zuweisen.

Wichtig

Wenn Sie planen, den zum Exportieren Ihres Snapshots AWS Management Console zu verwenden, können Sie festlegen, dass die IAM Richtlinie und die Rolle beim Exportieren des Snapshots automatisch erstellt werden. Anweisungen finden Sie unter Snapshot-Exportaufgaben erstellen.

So geben Sie DB-Snapshot-Aufgaben Zugriff auf Amazon S3
  1. Erstellen Sie eine IAM Richtlinie. Diese Richtlinie bietet die Berechtigungen für den Bucket und die Objekte, die den Zugriff auf Ihre Snapshot-Exportaufgabe ermöglichen Amazon S3.

    Die Richtlinie muss die folgenden erforderlichen Aktionen enthalten, um die Übertragung von Dateien aus Amazon Aurora in einen S3-Bucket zu ermöglichen:

    • s3:PutObject*

    • s3:GetObject*

    • s3:ListBucket

    • s3:DeleteObject*

    • s3:GetBucketLocation

    Fügen Sie in die Richtlinie die folgenden Ressourcen zur Identifizierung des S3-Buckets und der Objekte im Bucket ein. Die folgende Ressourcenliste zeigt das Format Amazon Resource Name (ARN) für den Zugriff auf Amazon S3.

    • arn:aws:s3:::amzn-s3-demo-bucket

    • arn:aws:s3:::amzn-s3-demo-bucket/*

    Weitere Informationen zum Erstellen einer IAM Richtlinie für Amazon Aurora finden Sie unterErstellen und Verwenden einer IAM-Richtlinie für den IAM-Datenbankzugriff. Siehe auch Tutorial: Erstellen Sie Ihre erste vom Kunden verwaltete Richtlinie und fügen Sie sie als Anlage hinzu im IAMBenutzerhandbuch.

    Mit dem folgenden AWS CLI Befehl wird eine IAM Richtlinie ExportPolicy mit diesen Optionen erstellt. Er gewährt Zugriff auf einen Bucket mit dem Namen amzn-s3-demo-bucket.

    Anmerkung

    Nachdem Sie die Richtlinie erstellt haben, notieren Sie sich die Beschreibung ARN der Richtlinie. Sie benötigen die ARN für einen nachfolgenden Schritt, wenn Sie die Richtlinie einer IAM Rolle zuordnen.

    aws iam create-policy --policy-name ExportPolicy --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Sid": "ExportPolicy", "Effect": "Allow", "Action": [ "s3:PutObject*", "s3:ListBucket", "s3:GetObject*", "s3:DeleteObject*", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket", "arn:aws:s3:::amzn-s3-demo-bucket/*" ] } ] }'
  2. Erstellen Sie eine IAM Rolle, damit Aurora diese IAM Rolle in Ihrem Namen übernehmen kann, um auf Ihre Amazon S3 S3-Buckets zuzugreifen. Weitere Informationen finden Sie im Benutzerhandbuch unter Erstellen einer Rolle zur Delegierung von Berechtigungen an einen IAM IAMBenutzer.

    Das folgende Beispiel zeigt, wie der AWS CLI Befehl verwendet wird, um eine Rolle mit dem Namen rds-s3-export-role zu erstellen.

    aws iam create-role --role-name rds-s3-export-role --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "export.rds.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }'
  3. Ordnen Sie die von Ihnen erstellte IAM Richtlinie der von Ihnen erstellten IAM Rolle zu.

    Mit dem folgenden AWS CLI Befehl wird die zuvor erstellte Richtlinie an die angegebene rds-s3-export-role Rolle angehängt. your-policy-arnErsetzen Sie sie durch die RichtlinieARN, die Sie in einem früheren Schritt notiert haben.

    aws iam attach-role-policy --policy-arn your-policy-arn --role-name rds-s3-export-role

Einen kontoübergreifenden Amazon-S3-Bucket verwenden

Sie können Amazon S3 S3-Buckets AWS kontenübergreifend verwenden. Um einen kontoübergreifenden Bucket zu verwenden, fügen Sie eine Bucket-Richtlinie hinzu, um den Zugriff auf die IAM Rolle zu ermöglichen, die Sie für die S3-Exporte verwenden. Weitere Informationen finden Sie unter Beispiel 2: Bucket-Eigentümer erteilt kontoübergreifende Bucket-Berechtigungen.

  • Fügen Sie eine Bucket-Richtlinie an Ihren Bucket an, wie im folgenden Beispiel gezeigt.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012:role/Admin" }, "Action": [ "s3:PutObject*", "s3:ListBucket", "s3:GetObject*", "s3:DeleteObject*", "s3:GetBucketLocation" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-destination-bucket", "arn:aws:s3:::amzn-s3-demo-destination-bucket/*" ] } ] }

Ein kontoübergreifendes Konto verwenden AWS KMS key

Sie können ein Cross-Konto verwenden AWS KMS key , um Amazon S3 S3-Exporte zu verschlüsseln. Zuerst fügen Sie dem lokalen Konto eine Schlüsselrichtlinie hinzu, dann fügen Sie IAM Richtlinien im externen Konto hinzu. Weitere Informationen finden Sie unter Zulassen, dass Benutzer mit anderen Konten einen KMS Schlüssel verwenden.

So verwenden Sie einen kontoübergreifenden Schlüssel KMS
  1. Fügen Sie dem lokalen Konto eine Schlüsselrichtlinie hinzu.

    Das folgende Beispiel gibt ExampleRole und ExampleUser im externen Konto 444455556666 Berechtigungen im lokalen Konto 123456789012.

    { "Sid": "Allow an external account to use this KMS key", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::444455556666:role/ExampleRole", "arn:aws:iam::444455556666:user/ExampleUser" ] }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:CreateGrant", "kms:DescribeKey", "kms:RetireGrant" ], "Resource": "*" }
  2. Fügen Sie dem externen Konto IAM Richtlinien hinzu.

    Die folgende IAM Beispielrichtlinie ermöglicht es dem Prinzipal, den KMS Schlüssel im Konto 123456789012 für kryptografische Operationen zu verwenden. Um diese Berechtigung an ExampleRole und ExampleUser zu erteilen, fügen Sie die Richtlinie zu ihnen im Konto 444455556666 an.

    { "Sid": "Allow use of KMS key in account 123456789012", "Effect": "Allow", "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:CreateGrant", "kms:DescribeKey", "kms:RetireGrant" ], "Resource": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab" }