簡體   English   中英

Amazon S3-訪問預簽名URL

[英]Amazon S3 - Accessing Presigned URLs

我已經生成了一個預簽名的s3網址。 嘗試從JS代碼訪問它時,出現錯誤“請求的資源上沒有'Access-Control-Allow-Origin'標頭”,並且我的存儲桶配置是

<CORSConfiguration>
  <CORSRule>
   <AllowedOrigin>*</AllowedOrigin>
   <AllowedMethod>GET</AllowedMethod>
   <MaxAgeSeconds>3000</MaxAgeSeconds>
   <AllowedHeader>Authorization</AllowedHeader>
  </CORSRule>
</CORSConfiguration>

基於我在網上發現的一些資源,例如-CORS。 預設網址。 S3等我將cors配置更改為

    <CORSConfiguration>
      <CORSRule>
       <AllowedOrigin>*</AllowedOrigin>
       <AllowedMethod>GET</AllowedMethod>
       <MaxAgeSeconds>3000</MaxAgeSeconds>
       <AllowedHeader>*</AllowedHeader>
      </CORSRule>
    </CORSConfiguration>

它起作用了,我能夠通過js代碼訪問該網址。 但是,我試圖了解將此標簽從“授權”更改為*是否有任何安全隱患。

請告訴我。

這將取決於您計划如何使用預簽名的URL。

  • 如果Web應用程序/服務器將使用它臨時訪問s3資源,則應該將CORS AllowedOrigin限制為將請求資源的應用程序的域。 通常,此CORS配置( Access-Control-Allow-Origin )具有最大的安全影響。 看到這個這個

    您可以使用通配符或特定域來限制它:

     <AllowedOrigin>https://*.mydomain.s3.amazonaws.com</AllowedOrigin> 
  • 如果將由多個客戶端(即最終用戶Web瀏覽器)請求,則除了設置<AllowedOrigin>*<AllowedOrigin> ,因此這不是推薦的方法。

如果將訪問權限限制為僅允許信任的域,則將AllowedHeaders設置為*的安全隱患很小。

暫無
暫無

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

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