OSS對象儲存


簡介

  阿里雲對象存儲服務(Object Storage Service,簡稱 OSS),是阿里雲提供的海量、安全、低成本、高可靠的雲存儲服務。

使用流程

  

名詞解釋

   Endpoint(訪問域名)
  AccessKeyId(阿里雲API的密鑰)
  AccessKeySecret (與AccessKeyId對應)
  Bucket(存儲空間)

OSS權限控制 

  • 賬號級別權限
    • 阿里雲賬號AccessKey
    • RAM子賬號AccessKey(避免泄露主賬號的AccessKey,建議使用)
    • STS賬號AccessKey
  • Bucket級別權限
    • public-read-write  公共讀寫
    • public-read  公共讀,私有寫
    • private  私有讀寫
  • Object級別權限(優先級高於Bucket)
    • public-read-write 公共讀寫
    • public-read 公共讀,私有寫
    • private 私有讀寫
    • default 默認權限 繼承bucket

個人總結

  • 如果是私有權限的文件,客戶端該如何訪問?

1.在Header中包含簽名

    

    2.在URL中包含簽名

    

      注:如果多次請求該方法,每次返回的url都不一樣

      例子:https://tts-oss-public.oss-cn-shenzhen.aliyuncs.com/test/f3a4a566197744a880383135bee0fccd1234.png?Expires=1524566570&OSSAccessKeyId=TMP.AQFXJvAkVfBaSwWi5a68tvgbrUVyzOH8_6w-YiOdGDYGxUhaBRowDx0ospaoAAAwLAIUNR8PTGbizu3ii_gFls2XEjyAdxgCFCO_85hsDtcnuzhKfXyb3ob4knFV&Signature=tb7w7K%2F%2FiKA4fYPHGieDOh99zUk%3D

  • OSS文件URL構成解釋?  

    https://tts-oss-public.oss-cn-shenzhen.aliyuncs.com/test/123.png

 

    tts-oss-public:bucket名稱,自定義,保存后不可更改,全局唯一
    oss-cn-shenzhen.aliyuncs.com:地域域名,在創建 Bucket 的時候指定的,指定之后不允許更改
    test:文件夾名,自定義,如果創建時帶有 / 會自動創建
    123.png:文件名

 

  • bucket設置為私有,能否防止惡意下載?

    不能防止,一但對應資源的簽名url對外暴露,在簽名url有效期內就可以通過簽名url下載對應的資源;

  • bucket私有,獲取到的資源鏈接是否具有時效性?

    有時效性,一但過期就不可被訪問

  • 獲取到的資源鏈接是否可以永久有效?

    將bucket改為公共讀/公共讀寫,獲取到的object鏈接一般都是永久有效的,但是如果bucket私有要獲取永久有效的鏈接,

      不支持也沒意義(私有本身就是為了保證數據安全性,一定期限內可訪問,一定程度上防止惡意下載,鏈接有效時間過長也就失去了對應的意義)。

  • 補充

    OSSClient是OSS服務的Java客戶端,它為調用者提供一系列與OSS進行交互的接口,用於管理、操作存儲空間(Bucket)和文件(Object)等OSS資源。

    •   
      // 創建OSSClient實例
      OSSClient client = new OSSClient(endpoint, accessKeyId, accessKeySecret);

    同一個存儲空間的內部是扁平的,沒有文件系統的目錄等概念,所有的對象都直接隸屬於其對應的存儲空間。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM