通过托管标识角色分配从代码访问 Azure 文件?

问题描述

是否可以使用托管标识从 .Net Core 访问 Azure 文件容器?

与此类似的代码片段。我意识到 CloudFileClient 不直接接受 TokenCredential,这只是为了表明意图。类似于我创建 BlobClient 的方式。

using Azure.Identity;
static void Main(...)
{
    var client = new CloudFileClient(new Uri("..."),new DefaultAzureCredential());
}

我可以使用托管标识来访问 Azure 文件,还是只能使用旧的机密方法

谢谢

-约翰

解决方法

当然,您可以使用托管标识来访问 Azure 文件。您仍然可以使用 TokenCredential 构造 CloudFileClient,请参阅此 tutorial

TokenCredential token = new TokenCredential("access-token");
StorageCredentials credentials = new StorageCredentials(token);

CloudFileClient client = new CloudFileClient(new Uri("..."),credentials);

ManagedIdentityCredentialDefaultAzureCredential 都验证 Azure 资源的托管身份。请参阅 here 以了解有关 DefaultAzureCredential 的更多信息。

enter image description here