Использование Azure управляемых удостоверений для доступа к Azure SQL БД - PullRequest
0 голосов
/ 25 мая 2020

Есть ли способ использовать Azure управляемые идентификаторы с Linux виртуальными машинами для доступа к Azure SQL БД? Все, что я смог найти, это этот документ https://docs.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/tutorial-windows-vm-access-sql, который конкретно касается Windows виртуальных машин. Есть ли задокументированный пошаговый подход для машины Linux?

Ответы [ 2 ]

1 голос
/ 26 мая 2020
Поддерживается доступ

SQL с использованием Managed Identity из Linux webapp. Использовать Windows управляемую идентификацию ВМ, назначенную системой, для доступа 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();

Полный код доступен здесь , просто замените строку подключения на свою.

0 голосов
/ 26 мая 2020

Похоже, что управляемое удостоверение не поддерживает Linux виртуальные машины для доступа к Azure SQL DB.

Аналогичная проблема здесь . И есть обходной путь, который использует кроссплатформенные. NET основные библиотеки, вы можете обратиться к it .

...