Presigned URL ile S3 Dosya Yükleme Kontrol Listesi

  • Home
  • Cloud
  • Presigned URL ile S3 Dosya Yükleme Kontrol Listesi
Presigned URL ile S3 object storage üzerine güvenli dosya yükleme görseli
DateAğu 11, 2026

SaaS, mobil uygulama veya müşteri paneli geliştiren ekiplerde dosya yükleme konusu ilk bakışta basit görünür: Kullanıcı fotoğrafı seçer, uygulama dosyayı sunucuya gönderir, dosya bir yerde saklanır. Fakat dosya sayısı arttığında bu yöntem hem uygulama sunucusunu yorar hem de ölçekleme tarafında gereksiz maliyet çıkarır.

Bu yüzden birçok projede daha doğru yaklaşım, dosyayı doğrudan S3 uyumlu object storage üzerine yükletmektir. Uygulama sunucusu sadece kısa süreli bir presigned URL üretir; dosyanın asıl transferi istemci ile depolama servisi arasında gerçekleşir.

Presigned URL neden kullanılır?

Presigned URL, uygulamanın kalıcı erişim anahtarlarını tarayıcıya veya mobil uygulamaya vermeden dosya yükleme izni sağlamanın pratik yoludur. Backend tarafı dosya adı, süre, bucket ve işlem tipine göre geçici bir URL üretir. Kullanıcı bu URL ile sadece belirlenen işlemi yapabilir.

  • kullanıcıların sık dosya yüklediği SaaS panelleri,
  • fotoğraf/video yükleyen mobil uygulamalar,
  • müşteri belge portalları,
  • medya arşivi veya albüm indirme sistemleri,
  • uygulama sunucusunun upload trafiğinden ayrılması gereken projeler.

Multipart upload ne zaman gerekir?

Küçük dosyalarda tek parça yükleme yeterli olabilir. Ancak büyük video, arşiv veya yüksek çözünürlüklü medya dosyalarında multipart upload daha güvenli bir yöntemdir. Dosya parçalara bölünür, her parça ayrı yüklenir ve işlem sonunda birleştirilir.

Burada önemli olan sadece parçaları yüklemek değildir. Uygulamanın başarısız kalan yüklemeleri, zaman aşımına düşen parçaları ve kullanıcı iptallerini de yönetmesi gerekir. Aksi halde tamamlanmamış multipart upload parçaları zaman içinde gereksiz depolama tüketebilir.

CORS ve ETag tarafı atlanmamalı

Tarayıcı üzerinden doğrudan yükleme yapılacaksa bucket CORS ayarları baştan planlanmalıdır. Özellikle multipart upload akışında tarayıcının ETag değerini okuyabilmesi gerekebilir. Bu nedenle CORS yapılandırmasında ilgili domain’ler ve gerekli header’lar net tanımlanmalıdır.

Staging ve production ortamları ayrı domain kullanıyorsa, bu domain’leri canlıya çıkmadan önce birlikte düşünmek iyi olur. Böylece testten üretime geçiş sırasında upload hatası yaşanmaz.

Uygulama tarafında tutulması gereken kayıtlar

  • dosya sahibi kullanıcı veya müşteri,
  • object key / dosya yolu,
  • yükleme durumu,
  • dosya boyutu ve MIME tipi,
  • upload başlangıç ve tamamlanma zamanı,
  • multipart upload kullanılıyorsa upload ID bilgisi.

Bu kayıtlar olmadan dosya var mı, işlem yarım mı kaldı, kullanıcıya hangi dosya gösterilmeli gibi sorular zamanla zorlaşır.

Güvenlik için kısa kontrol listesi

  • Kalıcı access key bilgilerini frontend’e koymayın.
  • Presigned URL sürelerini gereksiz uzun tutmayın.
  • Dosya tipi ve boyut kontrolünü sadece frontend’e bırakmayın.
  • Private bucket kullanıyorsanız indirme için de kontrollü URL üretin.
  • Hassas verileri genel medya dosyalarıyla aynı erişim modelinde tutmayın.
  • Tamamlanmamış multipart upload işlemleri için temizlik kuralı planlayın.

Backend üzerinden yükleme ne zaman tercih edilir?

Presigned URL her senaryo için tek doğru yöntem değildir. Dosya çok küçükse, kullanıcı sayısı düşükse veya yükleme sırasında uygulamanın dosyayı anlık olarak işlemesi gerekiyorsa backend üzerinden upload hâlâ mantıklı olabilir. Örneğin küçük profil görselleri, kısa PDF formları veya yönetici panelinden yapılan sınırlı yüklemelerde mimariyi gereksiz karmaşıklaştırmaya gerek yoktur.

Buna karşılık medya dosyaları büyüdüğünde, eşzamanlı kullanıcı sayısı arttığında veya uygulama sunucusunun asıl işi dosya taşımak değil iş mantığını yürütmek olduğunda presigned URL modeli daha sağlıklı hale gelir. Kararı verirken dosya boyutu, beklenen trafik, güvenlik ihtiyacı ve operasyon ekibinin takip edebileceği süreçler birlikte değerlendirilmelidir.

Narweb ile nasıl planlanabilir?

Narweb S3 Object Storage, S3 uyumlu uygulama senaryolarında dosya, medya, yedek ve arşiv verilerini sunucu diskinden ayırmak için kullanılabilir. Projenizde presigned upload, private bucket, lifecycle ve erişim anahtarı ayrımı gibi ihtiyaçlar varsa kurulum öncesinde mimariyi birlikte netleştirmek faydalı olur.

Daha büyük uygulama mimarilerinde depolama katmanını Cloud Dedicated Server altyapısıyla birlikte planlamak da mümkündür. Kullanım senaryonuzu paylaşarak uygun yapılandırma için Narweb ekibiyle iletişime geçebilirsiniz.

Bir yanıt yazın

Hemen bugün siz de mutlu Narweb müşterileri arasına katılın!

Narweb Cloud altyapısına geçerek siz de hem uygun fiyat hem de kaliteli hizmet almaya hemen başlayabilirsiniz.

Copyright 2000 - 2025 © NARWEB.net. Tüm hakları saklıdır. Narweb® Markası Narnet Bilgisayar Dahili Tic. LTD. ŞTİ.'nin tescilli bir markasıdır.