Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengkonfigurasi kebijakan IAM untuk menggunakan titik akses untuk bucket direktori
Kebijakan sumber daya dukungan titik akses AWS Identity and Access Management (IAM) yang memungkinkan Anda mengontrol penggunaan titik akses berdasarkan sumber daya, pengguna, atau kondisi lainnya. Agar aplikasi atau pengguna dapat mengakses objek melalui titik akses, jalur akses dan kebijakan bucket yang mendasarinya harus mengizinkan permintaan tersebut.
penting
Menambahkan titik akses ke bucket direktori tidak mengubah perilaku bucket saat bucket diakses langsung melalui nama bucket. Semua operasi yang ada terhadap bucket akan terus bekerja seperti sebelumnya. Pembatasan yang Anda sertakan dalam kebijakan jalur akses atau cakupan titik akses hanya berlaku untuk permintaan yang dibuat melalui jalur akses tersebut.
Saat menggunakan kebijakan sumber daya IAM, pastikan untuk menyelesaikan peringatan keamanan, kesalahan, peringatan umum, dan saran AWS Identity and Access Management Access Analyzer sebelum Anda menyimpan kebijakan Anda. Penganalisis Akses IAM menjalankan pemeriksaan kebijakan untuk memvalidasi kebijakan Anda terhadap tata bahasa kebijakan IAM dan praktik terbaik. Pemeriksaan ini menghasilkan temuan dan memberikan rekomendasi untuk membantu Anda membuat kebijakan yang berfungsi dan sesuai dengan praktik terbaik keamanan.
Untuk mempelajari validasi kebijakan menggunakan Penganalisis Akses IAM lebih lanjut, lihat Memvalidasi kebijakan Penganalisis Akses IAM di Panduan Pengguna IAM. Untuk melihat daftar peringatan, kesalahan, dan saran yang ditampilkan oleh Penganalisis Akses IAM, lihat referensi pemeriksaan kebijakan Penganalisis Akses IAM.
Titik akses untuk contoh kebijakan bucket direktori
Kebijakan titik akses berikut menunjukkan cara mengontrol permintaan ke bucket direktori. Kebijakan titik akses memerlukan bucket ARNs atau access point ARNs. Alias titik akses tidak didukung dalam kebijakan. Berikut ini adalah contoh dari titik akses ARN:
arn:aws:s3express:
region
:account-id
:accesspoint/myaccesspoint
--zoneID
--xa-s3
Anda dapat melihat titik akses ARN dalam detail titik akses. Untuk informasi selengkapnya, lihat Lihat detail untuk titik akses Anda untuk bucket direktori.
catatan
Izin yang diberikan dalam kebijakan titik akses hanya berlaku jika bucket yang mendasarinya juga mengizinkan akses yang sama. Anda dapat melakukan ini menggunakan dua cara:
-
(Disarankan) Delegasikan kontrol akses dari bucket ke titik akses seperti yang dijelaskan dalam Mendelegasikan kontrol akses ke titik akses.
-
Tambahkan izin yang sama yang tercantum dalam kebijakan titik akses ke kebijakan bucket dasar.
contoh 1 — Kebijakan kontrol layanan untuk membatasi titik akses ke asal jaringan VPC
Kebijakan kontrol layanan berikut mengharuskan semua titik akses baru dibuat dengan asal jaringan virtual private cloud (VPC). Dengan kebijakan ini, pengguna di organisasi Anda tidak dapat membuat jalur akses apa pun yang dapat diakses dari internet.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Deny", "Action": "s3express:CreateAccessPoint", "Resource": "*", "Condition": { "StringNotEquals": { "s3express:AccessPointNetworkOrigin": "VPC" } } } ] }
contoh 2 — Kebijakan titik akses untuk membatasi akses bucket ke titik akses dengan asal jaringan VPC
Kebijakan titik akses berikut membatasi semua akses ke bucket amzn-s3-demo-bucket--zoneID--x-s3
ke titik akses dengan asal jaringan VPC.
{ "Version": "2012-10-17", "Statement": [ { "Principal": "*", "Action": "s3express:CreateSession", "Effect": "Deny", "Resource": "arn:aws:s3express:
region
:111122223333
:bucket/amzn-s3-demo-bucket--zoneID--x-s3", "Condition": { "StringNotEqualsIfExists": { "s3express:AccessPointNetworkOrigin": "VPC" } } } ] }
Kunci syarat
Titik akses untuk bucket direktori memiliki kunci kondisi yang dapat Anda gunakan dalam kebijakan IAM untuk mengontrol akses ke sumber daya Anda. Kunci kondisi berikut hanya mewakili bagian dari kebijakan IAM. Untuk contoh kebijakan lengkap, lihat Titik akses untuk contoh kebijakan bucket direktori, Mendelegasikan kontrol akses ke titik akses, dan Memberikan izin untuk titik akses lintas akun.
s3express:DataAccessPointArn
-
Contoh ini menunjukkan cara memfilter akses dengan nama sumber daya Amazon (ARN) dari titik akses dan mencocokkan semua titik akses untuk Akun AWS
111122223333
di Wilayah:region
"Condition" : { "StringLike": { "s3express:DataAccessPointArn": "arn:aws:s3express:
region
:111122223333
:accesspoint/*" } } s3express:DataAccessPointAccount
-
Contoh ini menunjukkan operator string yang dapat Anda gunakan untuk mencocokkan ID akun pemilik titik akses. Contoh berikut cocok dengan semua titik akses yang dimiliki oleh Akun AWS
.111122223333
"Condition" : { "StringEquals": { "s3express:DataAccessPointAccount": "
111122223333
" } } s3express:AccessPointNetworkOrigin
-
Contoh ini menunjukkan operator string yang dapat Anda gunakan untuk mencocokkan asal jaringan, baik
Internet
atauVPC
. Contoh berikut hanya mencocokkan titik akses dengan asal VPC."Condition" : { "StringEquals": { "s3express:AccessPointNetworkOrigin": "VPC" } }
s3express:Permissions
-
Anda dapat menggunakan
s3express:Permissions
untuk membatasi akses ke operasi API tertentu dalam cakupan titik akses. Operasi API berikut didukung:PutObject
GetObject
DeleteObject
ListBucket
(diperlukan untukListObjectsV2
)GetObjectAttributes
AbortMultipartUpload
ListBucketMultipartUploads
ListMultipartUploadParts
catatan
Saat menggunakan kunci kondisi multi-nilai, kami sarankan Anda menggunakan
ForAllValues
denganAllow
pernyataan danForAnyValue
denganDeny
pernyataan. Untuk informasi selengkapnya, lihat Kunci konteks Multivalued di Panduan Pengguna IAM.
Untuk informasi selengkapnya tentang menggunakan kunci kondisi dengan Amazon S3, lihat Tindakan, sumber daya, dan kunci kondisi untuk Amazon S3 di Referensi Otorisasi Layanan.
Untuk informasi selengkapnya tentang izin yang diperlukan untuk operasi S3 API menurut jenis sumber daya S3, lihat. Izin yang diperlukan untuk operasi API Amazon S3
Mendelegasikan kontrol akses ke titik akses
Anda dapat mendelegasikan kontrol akses dari kebijakan bucket ke kebijakan titik akses. Kebijakan ini memungkinkan akses penuh ke semua titik akses yang dimiliki oleh akun pemilik bucket. Setelah menerapkan kebijakan, semua akses ke bucket ini dikendalikan oleh kebijakan titik akses. Kami menyarankan Anda untuk mengonfigurasi bucket dengan cara ini untuk semua kasus penggunaan yang tidak memerlukan akses langsung ke bucket.
contoh kebijakan bucket yang mendelegasikan kontrol akses ke titik akses
{ "Version": "2012-10-17", "Statement" : [ { "Effect": "Allow", "Principal" : { "AWS": "*" }, "Action" : "*", "Resource" : [ "
Bucket ARN
", "Condition": { "StringEquals" : { "s3express:DataAccessPointAccount" : "Bucket owner's account ID
" } } }] }
Memberikan izin untuk titik akses lintas akun
Untuk membuat titik akses ke bucket yang dimiliki oleh akun lain, Anda harus terlebih dahulu membuat titik akses dengan menentukan nama bucket dan ID pemilik akun. Kemudian, pemilik bucket harus memperbarui kebijakan bucket untuk mengotorisasi permintaan dari titik akses. Membuat titik akses mirip dengan membuat DNS CNAME di mana titik akses tidak menyediakan akses ke konten bucket. Semua akses bucket dikendalikan oleh kebijakan bucket. Contoh kebijakan bucket berikut mengizinkan GET
dan LIST
meminta pada bucket dari titik akses yang dimiliki oleh Akun AWS yang tepercaya.
Ganti Bucket ARN
dengan ARN ember.
contoh kebijakan bucket yang mendelegasikan izin ke yang lain Akun AWS
{ "Version": "2012-10-17", "Statement" : [ { "Effect": "Allow", "Principal" : { "AWS": "*" }, "Action" : "s3express:CreateSession", "Resource" : [ "
Bucket ARN
" ], "Condition": { "StringEquals" : { "s3express:DataAccessPointAccount": "Access point owner's account ID
" }, "ForAllValues:StringEquals": { "s3express:Permissions": [ "GetObject", "ListBucket" ] } } }] }