Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#-具有托管服务标识的Azure存储_C#_Azure_Azure Storage Blobs_Azure Managed Identity - Fatal编程技术网

C#-具有托管服务标识的Azure存储

C#-具有托管服务标识的Azure存储,c#,azure,azure-storage-blobs,azure-managed-identity,C#,Azure,Azure Storage Blobs,Azure Managed Identity,是否有人成功地在Azure存储中实现了托管服务标识(MSI),或者有任何关于该标识(MSI)的文档,最好是使用Blob 我的目标是通过MSI和存储对我的WebApp/WebJob进行身份验证。在设置了身份验证之后,我将把blob推送到存储器中。我之所以需要它,是为了从我的应用程序配置中消除任何形式的连接字符串和密码。更新 Azure Blob存储现在支持用于“无密钥”身份验证方案的MSI(托管服务标识) 旧答案 不幸的是,Blob存储不受支持,既不具有自己的标识,也不提供对具有自己标识的服务的访

是否有人成功地在Azure存储中实现了托管服务标识(MSI),或者有任何关于该标识(MSI)的文档,最好是使用Blob

我的目标是通过MSI和存储对我的WebApp/WebJob进行身份验证。在设置了身份验证之后,我将把blob推送到存储器中。我之所以需要它,是为了从我的应用程序配置中消除任何形式的连接字符串和密码。

更新 Azure Blob存储现在支持用于“无密钥”身份验证方案的MSI(托管服务标识)

旧答案

不幸的是,Blob存储不受支持,既不具有自己的标识,也不提供对具有自己标识的服务的访问。原因是Blob存储(所有Azure存储)不能与Azure Active Directory一起使用

不过,您也有其他选择,如Azure Data Lake Store或SQL Server,可以通过MSI访问

还请注意,支持密钥库。在您的情况下,我将创建存储的SAS密钥,并设置相关限制,然后将SAS密钥放入密钥库中。使用Web应用程序中的MSI从密钥库检索密钥。有趣的是,我们已经能够使用ARM模板构建此配置,将信任放在WebApp MSI中,并将存储密钥放在密钥库中,只有部署帐户知道密钥,非常好而且安全,开发人员从未看到或需要SAS密钥


您可以在找到支持MSI(托管服务标识)的服务列表

请编辑您的问题,并包括有关您想要完成的内容的更多详细信息。问题中有足够的信息可以保证您的回答,我在下面提供了这些信息。@MurrayFoxcroft请查看问题的编辑历史记录。第二段后来加上去了。啊,酷。好吧。我正在尝试使用系统分配的托管标识从Azure函数访问Azure存储。我遇到了一个未经授权的异常。详细信息还有一点我想指出的是,Azure存储很快就会出现基于Azure广告的身份验证/授权。他们最近增加了一些角色(如存储Blob阅读器等)。这是一个不同的事情,他们今天不工作:)。的确,但如果你有一个应用程序,需要它今天,那么你是运气:)。很高兴指出“关注这个空间”-Azure不断发展,完全同意您的观点。很好,感谢您提供的信息。现在,Azure存储作为支持MSI的服务列在该链接中(自2018年5月开始预览)。是时候更新这个答案了吗?