0

給定Azure存儲上的存儲文件(blob,表或隊列 - 無所謂),是否可以允許全部訪問它,但僅基於權限?允許訪問Azure存儲節點來選擇用戶?

例如,我有一個很大的圖像存儲和一個包含用戶和授權的數據庫。我希望用戶X只能訪問Y和Z圖片。因此,除非您提供某種類型的臨時安全令牌,否則URL通常無法訪問。那可能怎麼樣? 我知道我可以關閉來自外部世界的存儲,並且只允許通過檢查這些東西的應用程序來訪問它,但是這也需要應用程序也在Azure上,而且內部部署應用程序將無法從Azure存儲提供任何內容。

從我的理解中可以看出,大多數CDN提供了這樣的功能,我當然希望Azure也爲此提供解決方案!

Itamar。

回答

1

我不認爲你可以達到這個級別的訪問過濾。我知道這個MSDN文章

Managing Access to Containers and Blobs

,並在這裏描述一個博客中描述的唯一方法的代碼一小部分來實現它

Using Container-Level Access Policies in Windows Azure Storage

我不是肯定這會符合你的需要。如果我理解了這一點,我會這樣做: 1.在容器中整理與角色 匹配的內容2.在您的內部應用程序中檢查用戶是否有權訪問,如果是,則生成正確的URL以給他一個臨時訪問權限到資源。

當然這隻有在用戶必須通過中心點才能訪問blob中的內容時纔有效。如果他們爲生成的鏈接添加書籤,則一旦過期日期過去,它將失敗。

祝你好運。

0

這實際上可以用Blob存儲實現。考慮(a)與瀏覽器相似的用戶界面,以及(b)用戶已經通過身份驗證(可以使用訪問控制服務,但不需要)。

類似於資源管理器的用戶界面可能會暴露適用於已認證用戶的資源。對這些資源的基礎訪問權限應該是以適合對象的粒度進行共享訪問簽名控制 - 例如,限制僅查看文件夾中的一個文件或整個文件夾,或者在文件夾中創建文件的能力等。 ,都可以表達出來。

這個類似於瀏覽器的UI但需要訪問爲給定用戶提供正確文件的邏輯,同時還根據需要創建適當的共享訪問簽名。請注意,此邏輯不需要在Azure中託管,而只需要訪問正確的存儲密鑰(從Azure門戶)。

相關問題