Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Uso de las políticas de los buckets de Amazon S3 con la versión 3 de AWS SDK for PHP
Puede utilizar una política de bucket para conceder permisos a sus recursos de Amazon S3. Para obtener más información, consulte Uso de políticas de bucket y usuario.
El siguiente ejemplo muestra cómo:
-
Devuelva la política de un depósito específico utilizando GetBucketPolicy.
-
Reemplace una política en un depósito utilizando PutBucketPolicy.
-
Elimine una política de un depósito mediante DeleteBucketPolicy.
Todo el código de ejemplo para el AWS SDK for PHP está disponible aquí en GitHub
Credenciales
Antes de ejecutar el código de ejemplo, configure sus credenciales de AWS, como se indica en Credentials. A continuación, importe AWS SDK for PHP, como se indica en Uso básico.
Obtener, eliminar y sustituir una política en un bucket
Importaciones
require "vendor/autoload.php"; use Aws\Exception\AwsException; use Aws\S3\S3Client;
Código de muestra
$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"; }