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
Ketika Amazon S3 menerima permintaan—misalnya, operasi bucket atau operasi objek—pertama-tama akan memverifikasi apakah pemohon memiliki izin yang diperlukan. Amazon S3 mengevaluasi semua kebijakan akses yang relevan, kebijakan pengguna, dan kebijakan berbasis sumber daya (kebijakan bucket, bucket access control list (ACL), dan objek ACL) dalam memutuskan apakah akan mengotorisasi permintaan.
catatan
Jika pemeriksaan izin Amazon S3 gagal menemukan izin yang valid, kesalahan izin ditolak Akses Ditolak (403 Terlarang) akan dikembalikan. Untuk informasi selengkapnya, lihat Mem ecahkan Masalah Kesalahan Akses Ditolak (403 Terlarang) di Amazon S3.
Untuk menentukan apakah pemohon memiliki izin untuk melakukan operasi tertentu, Amazon S3 melakukan hal berikut, secara berurutan, ketika menerima permintaan:
-
Mengkonversi semua kebijakan akses yang relevan (kebijakan pengguna, kebijakan bucket, dan ACL) pada waktu berjalan menjadi serangkaian kebijakan untuk evaluasi.
-
Mengevaluasi serangkaian kebijakan yang dihasilkan dalam langkah-langkah berikut. Dalam setiap langkah, Amazon S3 akan mengevaluasi sebagian dari kebijakan dalam konteks tertentu, berdasarkan otoritas konteks.
-
Konteks pengguna–Dalam konteks pengguna, akun induk yang merupakan pemilik pengguna adalah otoritas konteks.
Amazon S3 mengevaluasi sebagian kebijakan yang dimiliki oleh akun induk. Sebagian kebijakan ini mencakup kebijakan pengguna yang dilampirkan oleh akun induk kepada pengguna. Jika induk juga memiliki sumber daya dalam permintaan (bucket atau objek), Amazon S3 juga mengevaluasi kebijakan sumber daya yang sesuai (kebijakan bucket, bucket ACL, dan ACL objek) secara bersamaan.
Pengguna harus memiliki izin dari akun induk untuk melakukan operasi.
Langkah ini hanya berlaku jika permintaan diajukan oleh pengguna dalam Akun AWS. Jika permintaan dibuat dengan menggunakan kredenSIAL pengguna root dari sebuah Akun AWS, Amazon S3 melewatkan langkah ini.
-
Konteks bucket — Dalam konteks bucket, Amazon S3 mengevaluasi kebijakan Akun AWS yang dimiliki oleh pemilik bucket.
Apabila permintaan digunakan untuk operasi bucket, maka pemohon harus memiliki izin dari pemilik bucket. Jika permintaan untuk sebuah objek, maka Amazon S3 akan mengevaluasi semua kebijakan yang dimiliki oleh pemilik bucket untuk memeriksa apakah pemilik bucket belum secara jelas menolak akses ke objek tersebut. Jika ada penolakan jelas yang ditetapkan, Amazon S3 tidak mengotorisasi permintaan.
-
Konteks objek–Jika permintaan untuk objek, maka Amazon S3 akan mengevaluasi sebagian kebijakan yang dimiliki oleh pemilik objek.
-
Berikut adalah beberapa contoh skenario yang menggambarkan bagaimana Amazon S3 mengotorisasi permintaan.
contoh— Pemohon adalah kepala sekolah IAM
Jika pemohon adalah prinsipal IAM, Amazon S3 harus menentukan apakah indu Akun AWS k yang dimiliki prinsipal telah memberikan izin yang diperlukan kepada prinsipal untuk melakukan operasi. Selain itu, jika permintaan tersebut untuk operasi bucket, seperti permintaan untuk mencantumkan konten bucket, maka Amazon S3 harus memverifikasi bahwa pemilik bucket telah memberikan izin bagi pemohon untuk melakukan operasi tersebut. Untuk melakukan operasi tertentu pada sumber daya, prinsipal IAM memerlukan izin dari indu Akun AWS k yang dimiliki dan Akun AWS yang memiliki sumber daya.
contoh— Requester adalah prinsipal IAM — Jika permintaan adalah untuk operasi pada objek yang tidak dimiliki pemilik bucket
Jika permintaan tersebut untuk operasi pada objek yang tidak dimiliki pemilik bucket, selain memastikan pemohon memiliki izin dari pemilik objek, Amazon S3 juga harus memeriksa kebijakan bucket untuk memastikan pemilik bucket belum menetapkan penolakan eksplisit pada objek. Pemilik bucket (yang membayar tagihan) dapat dengan tegas menolak akses ke objek di dalam bucket, terlepas dari siapa yang memilikinya. Pemilik bucket juga dapat menghapus objek apa pun yang ada dalam bucket.
Secara default, ketika orang Akun AWS lain mengunggah objek ke bucket tujuan umum S3 Anda, akun tersebut (penulis objek) memiliki objek, memiliki akses ke objek tersebut, dan dapat memberikan akses kepada pengguna lain melalui daftar kontrol akses (ACL). Anda dapat menggunakan Kepemilikan Objek untuk mengubah perilaku default ini sehingga ACL dinonaktifkan dan Anda, sebagai pemilik bucket, secara otomatis memiliki setiap objek dalam bucket tujuan umum Anda. Akibatnya, kontrol akses untuk data Anda didasarkan pada kebijakan, seperti kebijakan pengguna IAM, kebijakan bucket S3, kebijakan titik akhir cloud pribadi virtual (VPC), dan kebijakan kontrol AWS Organizations layanan (SCP). Untuk informasi selengkapnya, lihat Mengontrol kepemilikan objek dan menonaktifkan ACL untuk bucket Anda.
Untuk informasi lebih lanjut tentang bagaimana Amazon S3 mengevaluasi kebijakan akses untuk mengotorisasi atau tolak permintaan untuk operasi bucket dan operasi objek, lihat topik berikut: