当前位置: 首页 > 知识库问答 >
问题:

使用Azure托管标识访问AzureSQLDB

汪安宁
2023-03-14

有没有办法将Azure托管标识与LinuxVM一起使用来访问AzureSQL数据库?我只能找到这个文档https://docs.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/tutorial-windows-vm-access-sql它专门针对Windows VM。Linux机器是否有文档化的分步方法?

共有2个答案

尤俊誉
2023-03-14

托管标识似乎不支持Linux虚拟机访问Azure SQL DB。

这里也有类似的问题。并且有一个使用跨平台的解决方法。NET核心库,您可以参考它。

柳翼
2023-03-14

支持使用Linux webapp中的托管标识进行SQL访问。“使用Windows VM系统分配的托管身份访问Azure SQL”教程非常适用于Linux,只需去掉代码示例并使用如下内容:

var azureServiceTokenProvider = new AzureServiceTokenProvider();
var accessToken = await azureServiceTokenProvider.GetAccessTokenAsync("https://database.windows.net/");

using
var sqlConnection = new SqlConnection(configuration.GetConnectionString("Default")) {
 AccessToken = accessToken
};
using
var sqlCommand = new SqlCommand("SELECT @@VERSION", sqlConnection);
await sqlConnection.OpenAsync();
var version = (string) await sqlCommand.ExecuteScalarAsync();

这里有完整的代码,只需将连接字符串替换为您的。

 类似资料:
  • 我正在尝试使用托管标识从Azure Windows VM访问Azure存储资源。 我已经按照这里的指示做了https://docs.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/tutorial-vm-windows-access-storage但本教程中的访问部分是使用完成的。NET,这

  • 我正在尝试以编程方式获取Azure数据工厂的托管标识对象(使用Python)。 为此,我遵循以下步骤: 在Azure Active Directory中注册应用程序以获取客户端ID、添加客户端机密、租户ID、范围 如链接中提供:https://docs.microsoft.com/en-us/azure/data-factory/data-factory-service-identity 完成这些

  • 我们计划在我们的单个Azure kubernetes集群上部署多个应用程序,每个应用程序都将拥有自己的一组Azure资源-例如:Key vault、Storage。 我计划为每个应用程序提供个人托管身份,并提供对相关资源的访问。 我知道AZURE AAD POD identify是配置POD以使用托管标识访问AZURE资源的方法。 但是,如何将多个托管标识添加到Azure kubernetes集群

  • 我试图使用托管标识从API管理实例调用Azure函数。我已为我的APIM实例设置了系统管理的标识。我已将参与者角色授予Azure Function应用程序上的此身份。我还将应用程序服务身份验证更改为AD。 现在我尝试从API调用该函数。 我有两个问题: 第一个:当我使用身份验证管理身份策略来获取令牌时,我得到了一个错误,当我使用受众https://myfunctionapp.azurewebsit

  • 我在Azure中创建了一个ServiceBus命名空间,以及一个主题和一个订阅。我还有一个简单的Azure version 1函数,可在ServiceBus中的接收主题上触发,如下所示: 当我通过使用主题的共享访问策略在函数应用程序设置中定义连接字符串时,该函数会很好地触发ServiceBus中的主题,如下所示: 现在,我想使用托管服务标识(MSI)来访问服务总线,而不是共享访问密钥。根据这个(h

  • 现在我正在使用AAD应用程序使服务成为= AAD应用程序 流程如下所示: 服务A:从托管标识获取令牌 服务A:转到KeyVault,出示令牌并获取AAD应用程序的秘密 服务A:转到AAD,提供一个秘密并为特定资源请求一个令牌 服务A:拨打服务B 服务B:验证令牌和资源 我想知道是否可以向我的服务注册托管标识,因此如果提供托管标识令牌,则服务B可以信任服务A。类似于这样: 服务A:从托管身份获取令牌