如何使用MSI从Java身份验证Azure存储?

问题描述 投票:1回答:1

我无法弄清楚如何使用Java中的托管标识(MI / MSI)创建BlobClient或StorageAccount引用。创建和使用MI在存储上设置RBAC是很简单的,但我无法弄清楚如何在我的代码中使用它。

我以前使用KeyVault进行了这项工作,因为我在网上找到了更多其他人这样做的例子,最终它非常简单:

MSICredentials credentials = new MSICredentials(AzureEnvironment.AZURE);
KeyVaultClient kvClient = new KeyVaultClient(credentials);

但我找不到一个类似的存储类,它将MSICredentials作为参数,也找不到使用MSICredentials创建StorageCredentials的方法。

有没有其他人有这个工作或有任何好主意?

java azure blob storage
1个回答
0
投票

Azure存储帐户还可以通过Java中的MSI进行身份验证。与KeyVault的方式不同。

它还在文件Azure AD Authentication for Azure Blobs and Queues now in public preview中显示。有三种方法可以对Azure存储进行身份验证,请参阅Credential in Azure Storage Java V10 Overview

您应首先使用MSI获取访问令牌,然后使用TokenCredentials进行身份验证。看看Getting a token for system assigned identity的方式。

© www.soinside.com 2019 - 2024. All rights reserved.