signed-url
URL bertanda tangan
Tautan berbagi dan URL bertanda tangan
T4 punya dua model tautan. Tautan berbagi dari dasbor memakai token T4 dan tidak memerlukan kunci API. Presigned URL S3 memakai SigV4 dan ditujukan untuk klien API.
Dari dasbor (tautan token)
Buka bucket → ikon berbagi pada baris objek → pilih masa berlaku → Buat tautan. Hasilnya muncul di modal dengan tombol salin dan waktu kedaluwarsa.
URL berbentuk https://t4.dalang.io/s/<token>. T4 hanya menyimpan hash SHA-256 token, bukan token aslinya. Tautan tidak bergantung pada kunci API: mencabut atau merotasi kunci tidak memengaruhinya. Tautan berlaku 1 jam, 24 jam, atau 7 hari, dan mengembalikan 404 jika objek dihapus atau diganti nama.
Presigned URL S3
Presigned URL memberi akses sementara ke satu objek lewat query SigV4. Berlaku sampai X-Amz-Expires berakhir dan terikat pada kunci API.
Dari CLI
aws --endpoint-url https://t4.dalang.io \
s3 presign s3://aset/branding/logo.png --expires-in 3600
Dari boto3
url = s3.generate_presigned_url(
"get_object",
Params={"Bucket": "aset", "Key": "branding/logo.png"},
ExpiresIn=3600,
)
Unggah lewat presigned PUT
url = s3.generate_presigned_url(
"put_object",
Params={"Bucket": "aset", "Key": "unggahan/foto.jpg", "ContentType": "image/jpeg"},
ExpiresIn=600,
)
# PUT body ke url dengan header Content-Type: image/jpeg
Batas dan keamanan
X-Amz-Expires1 detik sampai 7 hari (604.800 detik).- Tautan membawa tanda tangannya sendiri; siapa pun yang memilikinya dapat
mengakses objek sampai kedaluwarsa. Jangan diposting publik.
- Tautan token dari dasbor tidak bergantung pada kunci API; presigned URL S3
ditandatangani dengan kunci dan langsung berhenti saat kunci dicabut atau dirotasi. Periksa kunci pada setiap permintaan S3 dan gunakan masa berlaku pendek untuk data sensitif.
- URL hanya berlaku untuk metode dan path yang ditandatangani; mengubah query
atau path membatalkan tanda tangan.