Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan presigned URLs untuk S3 di Outposts
Untuk memberikan akses terbatas waktu ke objek yang disimpan secara lokal di Outpost tanpa memperbarui kebijakan bucket, Anda dapat menggunakan URL yang telah ditetapkan sebelumnya. Dengan presigned URLs, Anda sebagai pemilik bucket dapat berbagi objek dengan individu di virtual private cloud (VPC) Anda atau memberi mereka kemampuan untuk mengunggah atau menghapus objek.
Saat Anda membuat URL presigned menggunakan AWS SDKs atau AWS Command Line Interface (AWS CLI), Anda mengaitkan URL dengan tindakan tertentu. Anda juga memberikan akses terbatas waktu ke URL yang telah ditetapkan sebelumnya dengan memilih waktu kedaluwarsa kustom yang bisa serendah 1 detik dan setinggi 7 hari. Saat Anda membagikan URL yang telah ditandatangani, individu di VPC dapat melakukan tindakan yang disertakan dalam URL seolah-olah mereka adalah pengguna yang memublikasikan sendiri. Ketika URL mencapai waktu kedaluwarsa, URL kedaluwarsa dan tidak lagi berfungsi.
Pembatasan kemampuan URL yang telah ditandatangani
Kemampuan URL yang telah ditandatangani dibatasi oleh izin pengguna yang membuatnya. Intinya, presigned URLs adalah token pembawa yang memberikan akses kepada mereka yang memilikinya. Oleh karena itu, kami menyarankan agar Anda melindunginya sebagaimana mestinya.
AWS Tanda Tangan Versi 4 (SiGv4)
Untuk menerapkan perilaku tertentu saat permintaan URL presigned diautentikasi menggunakan AWS Signature Version 4 (SigV4), Anda dapat menggunakan kunci kondisi dalam kebijakan bucket dan kebijakan jalur akses. Misalnya, Anda dapat membuat kebijakan bucket yang menggunakan s3-outposts:signatureAge
kondisi untuk menolak permintaan URL Amazon S3 pada Outposts yang telah ditetapkan sebelumnya pada objek di example-outpost-bucket
bucket jika tanda tangan berusia lebih dari 10 menit. Untuk menggunakan contoh ini, ganti
dengan informasi Anda sendiri.user input
placeholders
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Deny a presigned URL request if the signature is more than 10 minutes old", "Effect": "Deny", "Principal": {"AWS":"
444455556666
"}, "Action": "s3-outposts:*", "Resource": "arn:aws:s3-outposts:us-east-1
:111122223333
:outpost/op-01ac5d28a6a232904
/bucket/example-outpost-bucket
/object/*", "Condition": { "NumericGreaterThan": {"s3-outposts:signatureAge": 600000}, "StringEquals": {"s3-outposts:authType": "REST-QUERY-STRING"} } } ] }
Untuk daftar kunci kondisi dan kebijakan contoh tambahan yang dapat Anda gunakan untuk menerapkan perilaku tertentu saat permintaan URL yang telah ditetapkan sebelumnya diautentikasi menggunakan Versi Tanda Tangan 4, lihat. AWS Kunci kebijakan khusus otentikasi Versi Tanda Tangan 4 (SigV4)
Pembatasan jalur jaringan
Jika Anda ingin membatasi penggunaan presigned URLs dan semua S3 pada Outposts akses ke jalur jaringan tertentu, Anda dapat menulis kebijakan yang memerlukan jalur jaringan tertentu. Untuk menetapkan pembatasan pada prinsipal IAM yang membuat panggilan, Anda dapat menggunakan kebijakan berbasis identitas AWS Identity and Access Management (IAM) (misalnya, kebijakan pengguna, grup, atau peran). Untuk menetapkan batasan pada sumber daya S3 pada Outposts, Anda dapat menggunakan kebijakan berbasis sumber daya (misalnya, kebijakan bucket dan titik akses).
Pembatasan jalur jaringan pada pengguna utama IAM mengharuskan pengguna kredensial tersebut untuk membuat permintaan dari jaringan yang ditentukan. Pembatasan pada bucket atau titik akses mengharuskan semua permintaan ke sumber daya tersebut berasal dari jaringan tertentu. Pembatasan ini juga berlaku di luar skenario URL yang telah ditandatangani sebelumnya.
Kondisi global IAM yang Anda gunakan bergantung pada jenis titik akhir. Jika Anda menggunakan titik akhir publik untuk S3 di Outposts, gunakan aws:SourceIp
. Jika Anda menggunakan titik akhir VPC untuk S3 di Outposts, gunakan aws:SourceVpc
atau aws:SourceVpce
.
Pernyataan kebijakan IAM berikut mengharuskan prinsipal untuk mengakses AWS hanya dari rentang jaringan yang ditentukan. Dengan pernyataan kebijakan ini, semua akses harus berasal dari rentang itu. Hal ini juga termasuk kasus seseorang yang menggunakan URL presigned untuk S3 di Outposts. Untuk menggunakan contoh ini, ganti
dengan informasi Anda sendiri.user input
placeholders
{ "Sid": "NetworkRestrictionForIAMPrincipal", "Effect": "Deny", "Action": "*", "Resource": "*", "Condition": { "NotIpAddressIfExists": {"aws:SourceIp": "
IP-address-range
"}, "BoolIfExists": {"aws:ViaAWSService": "false"} } }
Untuk contoh kebijakan bucket yang menggunakan kunci kondisi aws:SourceIP
AWS global untuk membatasi akses ke bucket S3 di Outposts ke rentang jaringan tertentu, lihat. Mengatur IAM dengan S3 di Outposts
Siapa yang dapat membuat URL yang telah ditandatangani
Siapa pun yang memiliki kredensial keamanan yang valid dapat membuat sebuah URL yang telah ditandatangani. Akan tetapi agar pengguna di VPC berhasil mengakses objek, URL presigned harus diciptakan oleh seseorang yang memiliki izin untuk melakukan operasi yang menjadi dasar dari URL presigned tersebut.
Anda dapat menggunakan kredensial berikut untuk membuat URL presigned:
-
Profil instans IAM–Valid hingga 6 jam.
-
AWS Security Token Service-Berlaku hingga 36 jam saat ditandatangani dengan kredensial permanen, seperti kredensial pengguna root Akun AWS atau pengguna IAM.
-
Pengguna IAM - Berlaku hingga 7 hari saat Anda menggunakan AWS Signature Versi 4.
Untuk menciptakan sebuah URL presigned yang berlaku hingga 7 hari, pertama-tama delegasikan kredensial pengguna IAM (kunci akses dan kunci rahasia) pada SDK yang Anda gunakan. Kemudian, buat URL presigned dengan menggunakan AWS Signature Version 4.
catatan
-
Jika Anda menciptakan sebuah URL presigned menggunakan token sementara, URL akan kedaluwarsa saat token kedaluwarsa, meskipun Anda membuat URL dengan waktu kedaluwarsa lebih lama.
-
Karena akses URLs hibah yang telah ditetapkan sebelumnya ke bucket S3 on Outposts Anda kepada siapa pun yang memiliki URL, kami sarankan Anda melindunginya dengan tepat. Untuk informasi selengkapnya tentang melindungi presigned URLs, lihatPembatasan kemampuan URL yang telah ditandatangani.
Kapan S3 di Outposts memeriksa tanggal dan waktu kedaluwarsa dari URL yang telah ditandatangani?
Pada saat permintaan HTTP, S3 di Outposts memeriksa tanggal dan waktu kedaluwarsa dari URL yang ditandatangani. Misalnya, jika klien mulai mengunduh file besar segera sebelum waktu kedaluwarsa, pengunduhan berlanjut meskipun waktu kedaluwarsa berlalu selama pengunduhan. Akan tetapi, jika koneksi menurun dan klien mencoba memulai ulang unduhan setelah waktu kedaluwarsa berlalu, pengunduhan gagal.
Untuk informasi selengkapnya tentang menggunakan URL yang telah ditandatangani untuk berbagi atau unggah objek, lihat topik berikut ini.