簡體   English   中英

子目錄中所有文件的 Azure 訪問令牌

[英]Azure access token for all files in sub directory

我有一個安全的 Azure Blob 設置如下:

ContainerName > SubDirectory/FileName

E.g., /Photos/0000001/pic.png

其中一些子目錄包含數千個文件,所有這些文件都需要呈現到網頁上。 由於 Blob 是安全的,我目前正在使用GetSharedAccessSignature(...)為每個單獨的文件獲取訪問令牌。

有沒有辦法讓我獲得一個令牌來授予對子目錄(“/0000001/”)中所有文件的訪問權限,或者我目前正在做的被認為是最佳實踐?

你只能得到Shared Access Signatureblob container或為single blob ,但是你是不是能夠得到Shared Access Signatureblob virtual directory ,因為目錄是不是在Azure的Blob存儲一個真實的概念。

不知道我怎么想的,但是這是獲取目錄訪問令牌的方法:

var blob = storageService.Context.Container.ListBlobs().FirstOrDefault();

var policy =
    new SharedAccessBlobPolicy()
    {
        Permissions = SharedAccessBlobPermissions.Read,
        SharedAccessExpiryTime = DateTime.UtcNow.AddMinutes(10)
    };

blob.Container.GetSharedAccessSignature(policy);

如果激活分層命名空間,即數據湖,較新的版本支持目錄級訪問。 請參閱MS Docs:Service SAS support for directory scoped access

暫無
暫無

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

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