我們使用S3進行圖片上傳。我們批准上傳到我們網站的所有圖片。該過程如下:亞馬遜S3:不允許客戶端修改已上傳的圖片嗎?
- 客戶端在給定路徑上從JavaScript上載圖像到S3上。 (使用令牌)
- 有一次,我們從S3取回網址,我們在數據庫中用照片表中的'isApproved flag false'保存了S3路徑。
- 一旦通過我們的主管批准圖像,圖像就開始在我們的網站上顯示。
問題是用戶可能會通過生成的令牌在批准過程後更改圖像(對某些淫穢圖像)。我們能以某種方式阻止用戶像這樣修改圖像嗎?
一個臨時修復方法是縮短令牌生存時間間隔,即5分鐘,並僅在該間隔後批准圖像。
我看到this但沒有幫助,因爲版本控制也取代了已經上傳的圖像,並將之前上傳的圖像移動到了新版本的路徑。
任何更好的解決方案?
您可以將批准的圖像移動到具有不同權限集的其他存儲桶(或文件夾)(只讀訪問)。 –
擴展@ KhalidT。的評論,似乎你不應該讓用戶將對象寫入最終發佈的路徑。當你「批准」他們時你應該這樣做。 –