![](/img/trans.png)
[英]Invalid access token from Azure Active Directory using OpenIdConnect
[英]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 Signature
的blob container
或为single blob
,但是你是不是能够得到Shared Access Signature
的blob 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.