Arbeiten mit Amazon S3 S3-Bucket-Richtlinien mit der AWS SDK für PHP Version 3 - AWS SDK für PHP

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.

Arbeiten mit Amazon S3 S3-Bucket-Richtlinien mit der AWS SDK für PHP Version 3

Sie können eine Bucket-Richtlinie verwenden, um Berechtigungen für Ihre Amazon S3 S3-Ressourcen zu erteilen. Weitere Informationen dazu erhalten Sie unter Verwendung von Bucket-Richtlinien und Benutzerrichtlinien.

Das folgende Beispiel zeigt eine Anleitung für:

Der gesamte Beispielcode für AWS SDK für PHP ist hier verfügbar GitHub.

Anmeldeinformationen

Bevor Sie den Beispielcode ausführen, konfigurieren Sie Ihre AWS Anmeldeinformationen wie unter beschriebenAuthentifizierung AWS mit AWS SDK für PHP Version 3. Importieren Sie dann die AWS SDK für PHP, wie unter beschriebenInstallation der AWS SDK für PHP Version 3.

Rufen Sie eine Richtlinie für einen Bucket ab, löschen Sie sie und ersetzen Sie sie

Importe

require "vendor/autoload.php"; use Aws\Exception\AwsException; use Aws\S3\S3Client;

Beispiel-Code

$s3Client = new S3Client([ 'profile' => 'default', 'region' => 'us-west-2', 'version' => '2006-03-01' ]); $bucket = 'my-s3-bucket'; // Get the policy of a specific bucket try { $resp = $s3Client->getBucketPolicy([ 'Bucket' => $bucket ]); echo "Succeed in receiving bucket policy:\n"; echo $resp->get('Policy'); echo "\n"; } catch (AwsException $e) { // Display error message echo $e->getMessage(); echo "\n"; } // Deletes the policy from the bucket try { $resp = $s3Client->deleteBucketPolicy([ 'Bucket' => $bucket ]); echo "Succeed in deleting policy of bucket: " . $bucket . "\n"; } catch (AwsException $e) { // Display error message echo $e->getMessage(); echo "\n"; } // Replaces a policy on the bucket try { $resp = $s3Client->putBucketPolicy([ 'Bucket' => $bucket, 'Policy' => 'foo policy', ]); echo "Succeed in put a policy on bucket: " . $bucket . "\n"; } catch (AwsException $e) { // Display error message echo $e->getMessage(); echo "\n"; }