Lewati ke konten
T4

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-Expires 1 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.