Menggunakan titik akses S3 ARN Versi 3 AWS SDK for PHP - AWS SDK for PHP

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menggunakan titik akses S3 ARN Versi 3 AWS SDK for PHP

S3 memperkenalkan titik akses, cara baru untuk berinteraksi dengan bucket S3. Access Points dapat memiliki kebijakan dan konfigurasi unik yang diterapkan padanya, bukan langsung ke bucket. AWS SDK for PHPIni memungkinkan Anda menggunakan ARN titik akses di bidang bucket untuk operasi API alih-alih menentukan nama bucket secara eksplisit. Rincian lebih lanjut tentang cara kerja titik akses S3 dan ARN dapat ditemukan di sini. Contoh berikut menunjukkan cara:

  • Gunakan GetObjectdengan titik akses ARN untuk mengambil objek dari ember.

  • Gunakan PutObjectdengan titik akses ARN untuk menambahkan objek ke ember.

  • Konfigurasikan klien S3 untuk menggunakan wilayah ARN alih-alih wilayah klien.

Semua kode contoh untuk AWS SDK for PHP tersedia di sini GitHub.

Kredensial

Sebelum menjalankan kode contoh, konfigurasikan AWS kredensyal Anda, seperti yang dijelaskan dalam. Kredensial Kemudian imporAWS SDK for PHP, seperti yang dijelaskan dalamPenggunaan dasar.

Impor

require 'vendor/autoload.php'; use Aws\S3\S3Client;

Dapatkan objek

Pertama buat layanan klien AWS.S3 yang menentukan wilayah dan versi. AWS Kemudian panggil getObject metode dengan kunci Anda dan titik akses S3 ARN di Bucket lapangan, yang akan mengambil objek dari ember yang terkait dengan titik akses itu.

Kode Sampel

$s3 = new S3Client([ 'version' => 'latest', 'region' => 'us-west-2', ]); $result = $s3->getObject([ 'Bucket' => 'arn:aws:s3:us-west-2:123456789012:accesspoint:endpoint-name', 'Key' => 'MyKey' ]);

Masukkan benda ke dalam ember

Pertama buat layanan klien AWS.S3 yang menentukan Wilayah dan versi. AWS Kemudian panggil putObject metode dengan kunci yang diinginkan, file tubuh atau sumber, dan titik akses S3 ARN di Bucket lapangan, yang akan menempatkan objek di ember yang terkait dengan titik akses itu.

Kode Sampel

$s3 = new S3Client([ 'version' => 'latest', 'region' => 'us-west-2', ]); $result = $s3->putObject([ 'Bucket' => 'arn:aws:s3:us-west-2:123456789012:accesspoint:endpoint-name', 'Key' => 'MyKey', 'Body' => 'MyBody' ]);

Konfigurasikan klien S3 untuk menggunakan wilayah ARN alih-alih wilayah klien

Saat menggunakan titik akses S3 ARN dalam operasi klien S3, secara default klien akan memastikan bahwa wilayah ARN cocok dengan wilayah klien, melempar pengecualian jika tidak. Perilaku ini dapat diubah untuk menerima wilayah ARN di atas wilayah klien dengan menyetel opsi use_arn_region konfigurasi ke. true Secara default, opsi diatur kefalse.

Kode Sampel

$s3 = new S3Client([ 'version' => 'latest', 'region' => 'us-west-2', 'use_arn_region' => true ]);

Klien juga akan memeriksa variabel lingkungan dan opsi file konfigurasi, dalam urutan prioritas berikut:

  1. Opsi klienuse_arn_region, seperti pada contoh di atas.

  2. Variabel lingkungan AWS_S3_USE_ARN_REGION

export AWS_S3_USE_ARN_REGION=true
  1. Variabel konfigurasi s3_use_arn_region dalam file konfigurasi AWS bersama (secara default di~/.aws/config).

[default] s3_use_arn_region = true