簡體   English   中英

提供具有S3后端和用戶權限的媒體文件

[英]Serve media files with S3 backend and user permissions

我很驚訝,但是我找不到在Google中具有完全相同要求的人,所以我去了。 我正在設計一個Django項目,並且我知道敏感文件將由用戶上傳,因此我需要引入某種權限控制機制(此刻正在考慮使用JWT)。

為了使我的項目從操作的角度來看無狀態(計划在容器中運行),我想將用戶上傳的文件存儲在分布式對象存儲系統(S3 / minio)中。

這就是我迷路的地方。 我知道在“常規” Django生產環境中,用戶上傳的媒體文件傾向於進入./media文件夾,並且Web服務器直接從那里提供該文件,而無需進行任何身份驗證。 對我而言,這是冒險且不可接受的,因為共享的直接鏈接可能會被嗅探/泄漏,並且未經授權的人員可以訪問敏感文檔。

包裝起來

  • 在S3 / minio中/從S3 / minio存儲/提供用戶上傳的內容的公認做法是什么?
  • 如何控制對這些文件的訪問?

謝謝!

我認為您的搜索查詢有誤,因為您不知道要查找什么,這是Django 存儲引擎

如果需要提供自定義文件存儲(一個常見的示例是在某個遠程系統上存儲文件),則可以通過定義自定義存儲類來實現。

當然,這已經為您完成

django-storages是Django的自定義存儲后端的集合。

  • 亞馬遜S3
  • Apache Libcloud
  • Azure存儲
  • 數字海洋
  • DropBox的
  • FTP
  • Google Cloud Storage SFTP

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM