View a markdown version of this page

Bagaimana Amazon S3 Memberikan Otorisasi Permintaan Operasi Objek - 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 Memberikan Otorisasi Permintaan Operasi Objek

Saat Amazon S3 menerima permintaan untuk operasi objek, itu akan mengubah semua izin yang relevan— izin berbasis sumber daya (daftar kontrol akses (ACL) objek, kebijakan bucket, ACL bucket) dan kebijakan pengguna IAM—menjadi serangkaian kebijakan yang akan dievaluasi pada waktu berjalan. Kemudian, itu akan mengevaluasi serangkaian kebijakan yang dihasilkan dengan serangkaian langkah. Pada setiap langkah, ia mengevaluasi subset kebijakan dalam tiga konteks spesifik—konteks pengguna, konteks bucket, dan konteks objek:

  1. Konteks pengguna — Jika pemohon adalah prinsipal IAM, prinsipal harus memiliki izin dari indu Akun AWS k yang menjadi miliknya. Dalam langkah ini, Amazon S3 mengevaluasi sebagian kebijakan yang dimiliki oleh akun induk (juga disebut sebagai otoritas konteks). Sebagian dari kebijakan ini mencakup kebijakan pengguna yang dilampirkan oleh akun induk pada pengguna utama. Jika induk juga memiliki sumber daya dalam permintaan (bucket atau objek), Amazon S3 mengevaluasi kebijakan sumber daya yang sesuai (kebijakan bucket, bucket ACL, dan ACL objek) secara bersamaan.

    catatan

    Jika induk Akun AWS memiliki sumber daya (bucket atau objek), ia dapat memberikan izin sumber daya ke prinsipal IAM dengan menggunakan kebijakan pengguna atau kebijakan sumber daya.

  2. Konteks bucket–Dalam konteks ini, Amazon S3 mengevaluasi kebijakan yang dimiliki oleh Akun AWS yang memiliki bucket tersebut.

    Jika pemilik Akun AWS objek dalam permintaan tidak sama dengan pemilik bucket, Amazon S3 memeriksa kebijakan jika pemilik bucket secara eksplisit menolak akses ke objek. Jika ada penolakan tegas yang ditetapkan pada objek, Amazon S3 tidak mengizinkan permintaan tersebut.

  3. Konteks objek–Pemohon harus memiliki izin dari pemilik objek untuk melakukan operasi objek tertentu. Dalam langkah ini, Amazon S3 mengevaluasi ACL objek.

    catatan

    Jika pemilik bucket dan objek sama, maka akses ke objek dapat diberikan dalam kebijakan bucket, yang dievaluasi dalam konteks bucket. Jika pemiliknya berbeda, maka pemilik objek harus menggunakan ACL objek untuk memberikan izin. Jika pemilik Akun AWS objek juga merupakan akun induk yang dimiliki prinsipal IAM, ia dapat mengonfigurasi izin objek dalam kebijakan pengguna, yang dievaluasi pada konteks pengguna. Untuk informasi lebih lanjut tentang penggunaan berbagai alternatif kebijakan akses ini, lihat Panduan yang menggunakan kebijakan untuk mengelola akses ke sumber daya Amazon S3 Anda.

    Jika Anda sebagai pemilik bucket ingin memiliki semua objek di bucket Anda dan menggunakan kebijakan bucket atau kebijakan berdasarkan IAMUntuk mengelola akses ke objek ini, Anda dapat menerapkan pengaturan yang diberlakukan pemilik bucket untuk Kepemilikan Objek. Dengan pengaturan ini, Anda sebagai pemilik bucket secara otomatis memiliki dan memiliki kontrol penuh atas setiap objek di bucket Anda. Bucket dan ACL objek tidak dapat diedit dan tidak lagi dipertimbangkan untuk diakses. Untuk informasi selengkapnya, lihat Mengontrol kepemilikan objek dan menonaktifkan ACL untuk bucket Anda.

Berikut ini adalah ilustrasi dari evaluasi berbasis konteks untuk operasi objek.

Evaluasi berbasis konteks untuk operasi objek.

Contoh permintaan operasi objek

Dalam contoh ini, pengguna IAM Jill, yang induknya Akun AWS adalah 1111-1111-1111, mengirimkan permintaan operasi objek (misalnya,GetObject) untuk objek yang dimiliki oleh 3333-3333- Akun AWS 3333 dalam bucket yang dimiliki oleh 2222-2222-2222. Akun AWS

Permintaan operasi objek.

Jill akan memerlukan izin dari induk Akun AWS, pemilik bucket, dan pemilik objek. Amazon S3 mengevaluasi konteksnya seperti berikut:

  1. Karena permintaan berasal dari prinsipal IAM, Amazon S3 mengevaluasi konteks pengguna untuk memverifikasi bahwa induk Akun AWS 1111-1111-1111 telah memberi Jill izin untuk melakukan operasi yang diminta. Jika dia memiliki izin tersebut, maka Amazon S3 akan mengevaluasi konteks bucket. Jika tidak, maka Amazon S3 akan menolak permintaan tersebut.

  2. Dalam konteks bucket, pemilik bucket, Akun AWS 2222-2222-2222, adalah otoritas konteks. Amazon S3 mengevaluasi kebijakan bucket untuk menentukan apakah pemilik bucket telah secara jelas menolak akses Jill ke objek.

  3. Dalam konteks objek, otorisasi konteks adalah Akun AWS 3333-3333-3333, pemilik objek. Amazon S3 mengevaluasi ACL objek untuk menentukan apakah Jill memiliki izin untuk mengakses objek tersebut. Jika ya, maka Amazon S3 akan mengesahkan permintaan tersebut.