是否可以使用托管标识从 C# 控制台代码连接 Azure 文件共享(存储帐户)
Posted
技术标签:
【中文标题】是否可以使用托管标识从 C# 控制台代码连接 Azure 文件共享(存储帐户)【英文标题】:Is it possible to connect Azure File share (Storage account) from C# console code using Managed Identity 【发布时间】:2021-12-05 16:28:56 【问题描述】:我试图使用我的 C# 代码将文件上传到 Azure 文件共享。使用托管标识。代码将部署到具有 Storge 帐户托管标识的 Azure VM。如何通过 DefaultAzureCredential 使用控制台应用程序进行连接。请帮助我。
【问题讨论】:
请提供足够的代码,以便其他人更好地理解或重现问题。 Uri url = new Uri("XXXXXXX.file.core.windows.net/share1/stage/1/2"); var cred = new DefaultAzureCredential(); ShareFileClient client = new ShareFileClient() 。我正在尝试使用 DefaultAzureCredential 访问此路径以上传我的文件从控制台应用程序到 Azure fileStorage。但是,我没有任何选项可以将 DefaultAzureCredential 与 ShareFileClient 类一起保留。 【参考方案1】:查看ShareServiceClient
的构造函数选项,我认为至少在 SDK 版本 12.8.0 中无法使用 Azure AD 连接到您的文件共享服务(因此排除了使用托管标识)。
您需要做的是使用共享访问签名,或使用存储帐户名称/密钥或指定存储帐户连接字符串来连接到您的文件服务。
【讨论】:
以上是关于是否可以使用托管标识从 C# 控制台代码连接 Azure 文件共享(存储帐户)的主要内容,如果未能解决你的问题,请参考以下文章