

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

# Lampiran A: Bagaimana penggunaan presigned Layanan AWS URLs
<a name="appendix-a"></a>

Lampiran ini memberikan informasi tentang Layanan AWS dan fitur yang menggunakan presigned. URLs Informasi ini melayani dua tujuan:
+ Untuk menyediakan insinyur keamanan yang menerapkan kontrol dengan informasi tentang kemungkinan dampak dari kontrol tersebut.
+ Untuk menciptakan kesadaran akan situasi di mana risiko ini mungkin relevan untuk interaksi pencatatan URL.

**penting**  
Lampiran ini tidak menyediakan daftar lengkap Layanan AWS atau penggunaan presigned. URLs Ini juga tidak mencakup solusi kustom atau pihak ketiga.

## Konsol Amazon S3
<a name="s3-console"></a>

**Prinsipal:** Pengguna konsol

**Kedaluwarsa default: 5 menit**

**Penafian**  
 Bagian ini mendokumentasikan perilaku konsol Amazon S3 saat ini. AWS perilaku konsol dapat berubah tanpa pemberitahuan.

Konsol Amazon S3 mendukung pengunduhan dan pengunggahan objek. Unduhan menggunakan URL presigned yang memiliki waktu kedaluwarsa 300 detik (5 menit).  URL dihasilkan oleh permintaan ke`https://<bucket-region>.console.aws.amazon.com/s3/batchOpsServlet-proxy`.

Permintaan tersebut dimulai ketika pengguna mengklik tombol unduh, sehingga URL tidak dibuat terlebih dahulu atau dikirim ke klien sampai permintaan eksplisit untuk mengunduh terjadi.

Unggahan serupa, kecuali bahwa konsol mengirimkan dua permintaan: `OPTIONS` sebagai pemeriksaan CORS pra-penerbangan, dan. `PUT` Kedua permintaan menggunakan tanda tangan yang sama.

Kredensil yang digunakan untuk penandatanganan adalah kredensil sementara yang terkait dengan pengguna yang saat ini masuk. Rincian tentang metode untuk mendapatkan kredensil sementara tersebut berada di luar cakupan panduan ini.

## Amazon S3 Objek Lambda
<a name="s3-object-lambda"></a>

**Prinsipal: Penelepon** titik akses

**Kedaluwarsa default: 61 detik**

**catatan**  
Per 7 November 2025, S3 Object Lambda hanya tersedia untuk pelanggan lama yang saat ini menggunakan layanan serta untuk memilih AWS Partner Network mitra (APN). Untuk kemampuan yang mirip dengan S3 Object Lambda, pelajari selengkapnya di sini — Perubahan ketersediaan [Objek Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/amazons3-ol-change.html) Lambda.

[Amazon S3 Object Lambda](https://aws.amazon.com/s3/features/object-lambda/) menggunakan AWS Lambda fungsi untuk memproses dan mengubah data secara otomatis saat diambil dari Amazon S3. Ketika S3 Object Lambda memanggil fungsi, fungsi tersebut disediakan URL `inputS3Url` () yang telah ditetapkan sebelumnya yang dapat digunakan untuk mengunduh objek asli dari titik akses pendukung. 

Presigned ini ditandatangani URLs untuk [jalur akses Amazon S3 pendukung](https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-security.html#olap-access-points-security), yang disediakan saat Anda mengonfigurasi S3 Object Lambda. (Ini tidak sama dengan titik akses Object Lambda.) Alih-alih menggunakan peran yang terikat pada fungsi Lambda, URL ditandatangani dengan menggunakan identitas pemanggil asli, dan izin pengguna tersebut akan berlaku saat URL digunakan. Jika ada header yang ditandatangani di URL, fungsi Lambda harus menyertakan header ini dalam panggilan ke Amazon S3.

URL presigned yang dikembalikan memiliki waktu kedaluwarsa 61 detik (satu detik lebih dari durasi maksimum untuk fungsi Lambda Objek S3). URL yang dihasilkan hanya dapat digunakan dengan titik akses pendukung. Penelepon titik akses Lambda Objek S3 perlu memiliki akses ke titik akses ini. Anda dapat membatasi akses itu ke konteks S3 Object Lambda dengan menggunakan kondisi. `"aws:CalledVia": ["s3-object-lambda.amazonaws.com"]` Ketika kondisi tersebut dilampirkan ke titik akses atau bucket pendukung, pengguna tidak dapat mengakses jalur akses atau bucket pendukung secara langsung.

Nilai dari pendekatan ini adalah tidak perlu memberikan akses fungsi Lambda ke bucket atau titik akses S3 Anda. Peran yang terkait dengan fungsi Lambda akan memerlukan izin untuk **WriteGetObjectResponse**, tetapi tidak memerlukan izin untuk. **GetObject**

Ketika S3 Object Lambda menghasilkan URLs presigned, itu tidak menambahkan batasan jaringan, sehingga URL dapat digunakan di luar fungsi Lambda. Namun, batasan apa pun yang ditempatkan pada penelepon S3 Object Lambda masih berlaku. Misalnya, jika fungsi Lambda Anda berjalan di VPC dan Anda membatasi pemanggil untuk menggunakan titik akhir VPC, siapa pun yang memiliki URL yang telah ditentukan sebelumnya akan memerlukan kemampuan untuk mengirimkannya melalui titik akhir VPC tersebut. Pembatasan ini juga berlaku untuk **SourceIp**dan **VpcSourceIp**. 

**catatan**  
Untuk menggunakan fungsi Lambda Objek S3 di VPC, VPC harus memiliki rute ke titik akhir S3 publik untuk dipanggil. **WriteGetObjectResponse** Ini tidak menunjukkan bahwa persyaratan untuk menggunakan titik akhir VPC tidak akan berlaku untuk permintaan untuk mengambil data dari bucket.

## AWS Lambda Lintas Wilayah CopyObject
<a name="lambda-cross-region-copy-object"></a>

**Prinsipal:**AWS internal

**Kedaluwarsa default: 3600 detik**

Saat Anda menggunakan [CopyObject](https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html)atau [UploadPartCopy](https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html)API untuk menyalin Wilayah AWS, Amazon S3 menggunakan URLs presigned internal. Ini APIs dapat dipanggil langsung dari SDKs atau dari AWS CLI perintah `aws s3api copy-object` dan`aws s3api upload-part`. Ini APIs tidak digunakan untuk Replikasi Amazon S3, tetapi digunakan oleh `aws s3 sync` perintah AWS CLI `aws s3 cp` dan saat sumber dan tujuan adalah bucket S3. Mereka juga didukung oleh `TransferManager` implementasi di berbagai AWS SDKs.

## AWS Lambda GetFunction
<a name="lambda-get-function"></a>

**Prinsipal:** AWS internal

**Kedaluwarsa default: 10 menit**

AWS Lambda menyimpan versi pengguna dalam bucket S3 yang dimiliki tim Lambda, sebelum membuat aset yang digunakan ke kontainer Lambda. Ketika Anda ingin mengakses kode untuk fungsi Anda, Anda memanggil [GetFunction](https://docs.aws.amazon.com/lambda/latest/dg/API_GetFunction.html)API. API ini merespons dengan`Code.Location`, yang berisi URL yang telah ditetapkan sebelumnya yang valid selama 10 menit (waktu kedaluwarsa ini adalah perilaku saat ini dan bukan kontrak yang dipublikasikan). Jika Anda tidak ingin kode, Anda dapat menggunakan kombinasi [GetFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/dg/API_GetFunctionConfiguration.html), [GetFunctionConcurrency](https://docs.aws.amazon.com/lambda/latest/dg/API_GetFunctionConcurrency.html), dan [ListTags](https://docs.aws.amazon.com/lambda/latest/dg/API_ListTags.html)untuk mengambil data lain yang dikembalikan oleh`GetFunction`.

URL yang dikembalikan tidak ditandatangani dengan kredensil pengguna yang saat ini masuk, tetapi atas nama pengguna oleh Lambda. Untuk alasan ini, kunci kondisi (seperti`aws:SourceIP`) yang diterapkan ke pengguna yang saat ini masuk atau kredensi sesi sementara pengguna tidak berlaku untuk URL yang dihasilkan. Ini benar apakah kunci kondisi **GetFunction**hanya diterapkan, atau diterapkan ke semua penggunaan AWS API untuk pengguna atau sesi.

Konsol Lambda juga menggunakan **GetFunction**dan URL presigned yang dikembalikan. Konsol menggunakan kredensil sementara yang terkait dengan pengguna yang saat ini masuk untuk menelepon. **GetFunction** Rincian tentang mendapatkan kredensil sementara tersebut berada di luar cakupan dokumen ini.

## Amazon ECR
<a name="ecr"></a>

**Prinsipal:** AWS internal

**Kedaluwarsa default: 1 jam**

Amazon Elastic Container Registry (Amazon ECR) menyediakan [GetDownloadUrlForLayer](https://docs.aws.amazon.com/AmazonECR/latest/APIReference/API_GetDownloadUrlForLayer.html)API, yang mengembalikan URL yang telah ditetapkan sebelumnya yang valid selama satu jam dan mendukung pengunduhan satu lapisan dari gambar Amazon ECR. Namun, operasi ini digunakan oleh proxy Amazon ECR dan umumnya tidak digunakan oleh pengguna untuk menarik dan mendorong gambar.

## Amazon Redshift Spectrum
<a name="spectrum"></a>

**Prinsip:** Peran diteruskan ke [CREATE EXTERNAL SCHEMA](https://docs.aws.amazon.com/redshift/latest/dg/r_CREATE_EXTERNAL_SCHEMA.html) melalui `IAM_ROLE`

**Kedaluwarsa default: 1 jam**

Amazon Redshift Spectrum menggunakan URLs presigned internal [dan melarang pembatasan kombinasi bucket dan peran Amazon Redshift yang](https://docs.aws.amazon.com/redshift/latest/mgmt/spectrum-enhanced-vpc.html#spectrum-enhanced-vpc-considerations-policies) akan membatasi presigned. URLs Anda dapat menggunakan `s3:signatureAge` nilai 16 menit, tetapi nilai yang sangat rendah tidak dapat diandalkan. Nilai minimum yang dapat Anda gunakan tergantung pada waktu dan ukuran kueri Anda. Meskipun nilai yang lebih rendah dari 16 menit berfungsi untuk banyak skenario, itu membutuhkan pengujian. Peran tersebut dapat dan harus dibatasi untuk digunakan hanya oleh Redshift Spectrum, yang tidak mengungkapkan yang URLs dihasilkannya, sehingga mengurangi pembenaran khas untuk nilai kedaluwarsa yang lebih rendah.

## Studio SageMaker AI Amazon
<a name="sagemaker-studio"></a>

Amazon SageMaker AI Studio mendukung dua tindakan API: [CreatePresignedDomainUrl](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreatePresignedDomainUrl.html)dan [CreatePresignedNotebookInstanceUrl](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreatePresignedNotebookInstanceUrl.html). Namun, ini APIs tidak terkait dengan fitur URL presigned Signature Version 4. Ini APIs membuat URL yang menggunakan `authToken` parameter, tetapi tidak mendukung parameter kueri Signature Version 4 standar apa pun.

`authToken`adalah mekanisme yang berbeda tetapi memiliki kesamaan dengan URLs presigned. Ini dikirim sebagai parameter string kueri dan mendukung waktu kedaluwarsa 5 menit.

SageMaker AI mendukung pembatasan jaringan. Jika Anda membatasi `sagemaker:CreatePresignedDomainUrl` tindakan, tindakan tersebut berlaku baik untuk panggilan [CreatePresignedDomainUrl](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreatePresignedDomainUrl.html)maupun penggunaan URL yang dihasilkan. Jika URL dihasilkan dari jaringan yang valid dan kemudian dikirim oleh jaringan yang tidak valid, panggilan API untuk menghasilkan URL berhasil, tetapi permintaan yang mengirim URL gagal. Hal yang sama berlaku [CreatePresignedNotebookInstanceUrl](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreatePresignedNotebookInstanceUrl.html)dan `sagemaker:CreatePresignedNotebookInstanceUrl` tindakannya.

Untuk informasi selengkapnya, lihat [dokumentasi SageMaker AI](https://docs.aws.amazon.com/sagemaker/latest/dg/howitworks-access-ws.html).