View a markdown version of this page

Bagaimana Amazon S3 Mengotorisasi Permintaan Operasi bucket - Amazon Simple Storage Service

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

Bagaimana Amazon S3 Mengotorisasi Permintaan Operasi bucket

Ketika Amazon S3 menerima permintaan untuk operasi bucket, Amazon S3 mengubah semua izin yang relevan menjadi serangkaian kebijakan untuk mengevaluasi pada runtime. Izin yang relevan termasuk izin berbasis sumber daya (misalnya, kebijakan bucket dan daftar kontrol akses bucket) dan kebijakan pengguna IAM jika permintaan dari pengguna utama IAM. Amazon S3 kemudian mengevaluasi kumpulan kebijakan yang dihasilkan dalam serangkaian langkah sesuai dengan konteks konteks-pengguna atau konteks bucket tertentu:

  1. Konteks pengguna–Jika peminta adalah pengguna utama IAM, maka pengguna utama tersebut harus memiliki izin dari induk Akun AWS yang sesuai. Dalam langkah ini, Amazon S3 mengevaluasi sebagian kebijakan yang dimiliki oleh akun induk (juga disebut sebagai otoritas konteks). Bagian dari kebijakan ini mencakup kebijakan pengguna yang dilampirkan oleh akun induk pada pengguna utama. Jika induk juga memiliki sumber daya dalam permintaan (dalam hal ini, bucket), maka Amazon S3 juga akan mengevaluasi kebijakan sumber daya yang sesuai (kebijakan bucket dan ACL bucket) pada waktu yang bersamaan. Setiap kali permintaan untuk operasi bucket dibuat, log akses server akan mencatat ID kanonik dari pemohon. Untuk informasi selengkapnya, lihat Pencatatan permintaan dengan pencatatan akses server.

  2. Konteks bucket Pemohon harus memiliki izin dari pemilik bucket untuk melakukan operasi bucket tertentu. Pada langkah ini, Amazon S3 mengevaluasi subset kebijakan Akun AWS yang dimiliki oleh pemilik bucket.

    Pemilik bucket dapat memberikan izin dengan menggunakan kebijakan bucket atau ACL bucket. Jika pemilik Akun AWS bucket juga merupakan akun induk dari prinsipal IAM, maka dapat mengonfigurasi izin bucket dalam kebijakan pengguna.

Context-based evaluasi untuk operasi bucket.

Evaluasi berbasis konteks untuk operasi bucket.

Contoh-contoh berikut ini menggambarkan logika evaluasi.

Contoh 1: Operasi bucket Diminta oleh pemilik bucket

Dalam contoh ini, pemilik bucket mengirimkan permintaan operasi bucket dengan menggunakan kredensial root Akun AWS.

Operasi bucket yang diminta oleh pemilik bucket.

Amazon S3 melakukan evaluasi konteks sebagai berikut:

  1. Karena permintaan dibuat dengan menggunakan kredensial pengguna root Akun AWS, maka konteks pengguna tidak dievaluasi.

  2. Dalam konteks bucket, Amazon S3 akan meninjau kebijakan bucket untuk menentukan apakah pemohon memiliki izin untuk melakukan operasi atau tidak. Amazon S3 mengotorisasi permintaan tersebut.

Contoh 2: Operasi bucket diminta oleh Akun AWS itu bukan pemilik ember

Dalam contoh ini, permintaan dibuat dengan menggunakan kredensial pengguna root Akun AWS 1111-1111-1111 untuk operasi bucket yang dimiliki oleh 2222-2222-2222 Akun AWS . Tidak ada pengguna IAM yang dilibatkan dalam permintaan ini.

Operasi bucket yang diminta oleh orang Akun AWS yang bukan pemilik bucket.

Dalam contoh ini, Amazon S3 mengevaluasi konteks sebagai berikut:

  1. Karena permintaan dibuat dengan menggunakan kredensial pengguna root Akun AWS, maka konteks pengguna tidak dievaluasi.

  2. Dalam konteks bucket, Amazon S3 memeriksa kebijakan bucket. Jika pemilik bucket (Akun AWS 2222-2222-2222) belum mengizinkan Akun AWS 1111-1111-1111 untuk melakukan operasi yang diminta, Amazon S3 menolak permintaan tersebut. Jika tidak, Amazon S3 akan memberikan permintaan dan melakukan operasi.

Contoh 3: Operasi bucket diminta oleh kepala sekolah IAM yang induknya Akun AWS juga pemilik ember

Sebagai contoh, permintaan dikirim oleh Jill, pengguna IAM di Akun AWS 1111-1111-1111, yang juga merupakan pemilik bucket.

Operasi bucket yang diminta oleh kepala sekolah IAM dan pemilik bucket.

Amazon S3 akan melakukan evaluasi konteks sebagai berikut:

  1. Karena permintaan berasal dari prinsipal IAM, dalam konteks pengguna, Amazon S3 mengevaluasi semua kebijakan milik induk Akun AWS untuk menentukan apakah Jill memiliki izin untuk melakukan operasi.

    Dalam contoh ini, induk Akun AWS 1111-1111-1111, yang menjadi milik prinsipal, juga merupakan pemilik bucket. Akibatnya, selain kebijakan pengguna, Amazon S3 juga mengevaluasi kebijakan bucket dan bucket ACL dalam konteks yang sama karena milik akun yang sama.

  2. Karena Amazon S3 mengevaluasi kebijakan bucket dan ACL bucket sebagai bagian dari konteks pengguna, maka itu tidak akan mengevaluasi konteks bucket.

Contoh 4: Operasi bucket diminta oleh kepala sekolah IAM yang induknya Akun AWS bukan pemilik ember

Dalam contoh ini, permintaan dikirim oleh Jill, pengguna IAM yang induknya Akun AWS adalah 1111-1111-1111, tetapi bucket dimiliki oleh orang lain, 2222-2222-2222. Akun AWS

Operasi bucket yang diminta oleh kepala sekolah IAM yang bukan pemilik bucket.

Jill akan membutuhkan izin dari induk Akun AWS dan pemilik bucket. Amazon S3 mengevaluasi konteks seperti berikut ini:

  1. Karena permintaan tersebut berasal dari pengguna utama IAM, Amazon S3 melakukan evaluasi konteks pengguna dengan meninjau kebijakan yang ditulis oleh akun tersebut untuk memverifikasi bahwa Jill memiliki izin yang diperlukan. Jika Jill memiliki izin, maka Amazon S3 melanjutkan untuk mengevaluasi konteks bucket. Jika Jill tidak memiliki izin, ia menolak permintaan tersebut.

  2. Dalam konteks bucket, Amazon S3 memverifikasi bahwa pemilik bucket 2222-2222-2222 telah memberikan izin kepada Jill (atau orang tuanya Akun AWS) untuk melakukan operasi yang diminta. Jika dia memiliki izin itu, Amazon S3 memberikan permintaan dan melakukan operasi. Jika tidak, maka Amazon S3 akan menolak permintaan tersebut.