2017-11-28 2 views
1

s3パブリックバケットを使って写真を保存したい。しかし、私が$ {userId} ...のような写真のパスに名前を付けるとしたら、他のユーザーが簡単にこのようなURLを強制して他のユーザーの写真を読み込むことができると私は考えています。それを避ける方法はありますか?どういうわけかURLをランダム化する必要があると思います。Facebookや他のソーシャルネットワークがどうしているのですか?s3で一意で予測できないパスを生成する

+0

SHA-256ペイロードハッシュ、おそらく? –

答えて

0

お客様の要件を正しく理解しているかどうかわかりませんが、thisがあなたの方向性を示している可能性があります。デフォルトでは、すべてのオブジェクトはプライベートです

ので、基本的には事前に署名したURLを生成し、それらをデフォルトで

すべてのオブジェクトはプライベートな時間内にオブジェクトをダウンロードするためのもののユーザーと共有しています。オブジェクト所有者だけがこれらのオブジェクトへのアクセス権を持っています。ただし、オブジェクト所有者は、独自のセキュリティ資格情報を使用して事前署名されたURLを作成し、オブジェクトをダウンロードするための時間制限の許可を与えることによって、オブジェクトを他のユーザーと共有することもできます。

だけS3の命名規則に関するベストプラクティス何を知りたい場合は、あなたはそれの全体像を持っているthisを参照することができます。簡単に言えば、できるだけランダムな名前をつくることができます。名前はss-mm-hh-FileNameで始まるでしょうか?

+0

プライベートバケットのアプローチについて考えましたが、セキュリティの観点からは私にとっては正しい選択だと思っています....ありがとう! – asdasdsdf

関連する問題