Erstellen einer Bucket-Richtlinie für die Bereitstellung einer statischen Website S3 mithilfe von AWS SDKs - AWS Amplify Hosting

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.

Erstellen einer Bucket-Richtlinie für die Bereitstellung einer statischen Website S3 mithilfe von AWS SDKs

Sie können das verwenden AWS SDKs , um eine statische Website von Amazon S3 auf Amplify Hosting bereitzustellen. Wenn Sie Ihre Website mithilfe eines SDK bereitstellen, müssen Sie Ihre eigene Bucket-Richtlinie erstellen, die Amplify Hosting die Erlaubnis erteilt, die Objekte in Ihrem S3 Bucket abzurufen.

Weitere Informationen zum Erstellen von Bucket-Richtlinien finden Sie unter Bucket-Richtlinien für Amazon S3 im Amazon Simple Storage Service-Benutzerhandbuch.

Die folgende Beispiel-Bucket-Richtlinie gewährt Amplify Hosting-Berechtigungen zum Auflisten von Buckets und zum Abrufen von Bucket-Objekten für die angegebene AWS-Konto Amplify-Anwendungs-ID und den angegebenen Zweig.

Zur Verwendung dieses Beispiels gehen Sie wie folgt vor:

  • amzn-s3-demo-website-bucket/prefixErsetzen Sie es durch den Namen des Buckets und das Präfix Ihrer Website.

  • Ersetze es 111122223333 durch deine AWS-Konto ID.

  • region-idErsetzen Sie es durch AWS-Region das, in dem sich Ihre Amplify-Anwendung befindet, z. B. us-east-1

  • app_idErsetzen Sie es durch Ihre Amplify-Anwendungs-ID. Diese Informationen sind in der Amplify-Konsole verfügbar.

  • Ersetzen Sie es branch_name durch Ihren Filialnamen.

Anmerkung

In Ihrer Bucket-Richtlinie aws:SourceArn muss es sich um einen URL-codierten (prozentualen) Branch-ARN ARN.

JSON
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAmplifyToListPrefix_appid_branch_prefix_", "Effect": "Allow", "Principal": { "Service": "amplify.amazonaws.com" }, "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::amzn-s3-demo-website-bucket/prefix/*", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333", "aws:SourceArn": "arn%3Aaws%3Aamplify%3Aregion-id%3A111122223333%3Aapps%2Fapp_id%2Fbranches%2Fbranch_name", "s3:prefix": "" } } }, { "Sid": "AllowAmplifyToReadPrefix__appid_branch_prefix_", "Effect": "Allow", "Principal": { "Service": "amplify.amazonaws.com" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::amzn-s3-demo-website-bucket/prefix/*", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333", "aws:SourceArn": "arn%3Aaws%3Aamplify%3Aregion-id%3A111122223333%3Aapps%2Fapp_id%2Fbranches%2Fbranch_name" } } }, { "Effect": "Deny", "Principal": "*", "Action": "s3:*", "Resource": "arn:aws:s3:::amzn-s3-demo-website-bucket/*", "Condition": { "Bool": { "aws:SecureTransport": "false" } } } ] }