Amazon S3 erişim kontrolü uygulamak

2 Cevap php

Ben Amazon S3 birkaç PDF dosyaları sakladığınız. Her dosya bir kullanıcı ile ilişkili ve sadece dosya sahibi dosyaya erişebilir. Benim indirme sayfasında bu uygulamaktadır. Ama gerçek PDF bağlantı herkes için erişilebilir Amazon S3 url, işaret.

Nasıl bu url için erişim kontrol kurallarını uyguluyorsunuz? (Benim sunucu tüm PDF indirme bağlantıları için bir proxy yapmadan)

2 Cevap

Ben bir son kullanma tarihi ile Amazon S3 adlı authenticated REST URLs kullanarak öneririm. Onlar halka açık olmayan S3 nesneye erişim süresi dolan, geçici izin verir.

Yani URL paylaşmak için gidiyoruz eğer, ne dosyayı kendisi paylaşımı onları durdurma, dedi?

S3 hesabınızda her bir dosya, özel erişim hakları (ACL) sahip olabilir. Sen private için tüm PDF'leri ACL ayarlamanız gerekir. O zaman kimse onlara erişmek mümkün olacak.

S3 için "geçici" hibe okuma erişim sağlayan bir API var. Örneğin Amazon's S3 PHP Library a getAuthenticatedURL (string $bucket, string $uri, integer $lifetime, [boolean $hostBucket = false], [boolean $https = false]) işlevi vardır.

Eğer derhal S3 kullanıcıyı yönlendirmek yeterli eğer daha - Bu (5 dakika gibi) belli bir zaman miktarı için bir PDF erişime izin vermenizi sağlayacaktır.