從AngularJS上傳到S3而不將訪問密鑰或密碼傳遞給客戶端的最佳方式是什麼?我有一位朋友嘗試通過在服務器上創建一個預先簽名的URL(NodeJS & Express),然後將URL發送到客戶端進行上傳。他聲稱由於CORS而失敗,但他可以使用來自同一個AngularJS應用程序瀏覽器的sdk進行上傳。上傳到S3沒有本地密鑰?
更新清晰
棘手的部分是他們什麼也沒存儲在一個環境變量,每個桶有不同的憑據。他們將信息存儲在10-20個桶/區域/ IAM用戶上,並且需要最終用戶在客戶端上選擇桶BY NAME。這意味着他們不能在全球存儲任何東西。服務器必須能夠爲每個請求生成一些東西供客戶端使用。
他原題:
Generate S3 Put URL Per Request
不要以爲他們可以走這條路線。他們將信息存儲在10-20個桶/區域/ IAM用戶上,並且需要最終用戶在客戶端上選擇桶BY NAME。這意味着他們不能在全球存儲任何東西。 –
使用IAM實例配置文件並不意味着您需要全局存儲任何內容。所有你需要做的就是用一個可以訪問桶的實例配置文件啓動ec2實例/服務器。 – Daniel
但是爲密鑰和祕密設置環境變量會假定所有的桶都具有相同的安全性,而他們不會。每個存儲桶有不同的憑據。 –