AWS SDK for PHP 버전 3을 사용한 Amazon S3 버킷 정책 작업 - AWS SDK for PHP

AWS SDK for PHP 버전 3을 사용한 Amazon S3 버킷 정책 작업

버킷 정책을 사용하여 Amazon S3 리소스에 대한 권한을 부여할 수 있습니다. 자세한 내용은 버킷 정책 및 사용자 정책 사용을 참조하세요.

다음 예에서는 작업 방법을 보여줍니다.

AWS SDK for PHP에 대한 모든 예제 코드는 GitHub에서 사용할 수 있습니다.

보안 인증 정보

예제 코드를 실행하기 전에 AWS SDK for PHP 버전 3을 사용하여 AWS로 인증에 설명된 대로 AWS 보안 인증을 구성합니다. 그 다음 AWS SDK for PHP 버전 3 설치에 설명된 AWS SDK for PHP를 가져옵니다.

버킷에 대한 정책 가져오기, 삭제, 바꾸기

가져옵니다.

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

샘플 코드

$s3Client = new S3Client([ 'profile' => 'default', 'region' => 'us-west-2', 'version' => '2006-03-01' ]); $bucket = 'amzn-s3-demo-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"; }