Подключение к ресурсу SQL Azure с помощью проверки подлинности Microsoft Entra
Область применения: База данных SQL Azure Управляемый экземпляр SQL Azure Azure Synapse Analytics
В этой статье показано, как использовать проверку подлинности Microsoft Entra для подключения к База данных SQL Azure, Управляемый экземпляр SQL Azure и Azure Synapse Analytics.
Необходимые компоненты
Чтобы подключиться к ресурсу SQL Azure, необходимо настроить проверку подлинности Microsoft Entra для ресурса.
Чтобы убедиться, что администратор Microsoft Entra настроен правильно, подключитесь к master
базе данных с помощью учетной записи администратора Microsoft Entra.
Чтобы создать пользователя автономной базы данных на основе Microsoft Entra, подключитесь к базе данных с удостоверением Microsoft Entra с доступом к базе данных и по крайней мере ALTER ANY USER
разрешением.
Подключение с помощью SSMS или SSDT
В следующих процедурах показано, как подключиться к База данных SQL с удостоверением Microsoft Entra с помощью SQL Server Management Studio (SSMS) или SQL Server Database Tools (SSDT).
Интегрированная аутентификация Microsoft Entra
Используйте этот метод, если вы хотите войти с помощью учетных данных Windows, федеративных в идентификатор Microsoft Entra. Дополнительные сведения см. в статье Простой единый вход Microsoft Entra.
Запустите SSMS или SSDT и на вкладке "Вход" диалогового окна "Подключение к серверу" (или "Подключение к ядро СУБД"):
- Укажите имя сервера в формате
<server-name>.database.windows.net
. - Для проверки подлинности выберите Microsoft Entra Integrated. Не нужно вводить пароль, так как для подключения отображаются существующие учетные данные.
- Для шифрования выберите "Строго" (SQL Server 2022 и SQL Azure), которые следует использовать для подключения к ресурсам SQL Azure.
- Укажите имя сервера в формате
На вкладке "Свойства подключения" в поле "Подключение к базе данных" введите имя пользовательской базы данных, к которой требуется подключиться.
Пароль Microsoft Entra
Используйте этот метод при подключении с именем субъекта Microsoft Entra с помощью управляемого домена Microsoft Entra. Его также можно использовать для федеративных учетных записей без доступа к домену, например, при удаленной работе.
Используйте этот метод для проверки подлинности в базе данных в База данных SQL или Управляемый экземпляр SQL с пользователями удостоверений, доступных только для облака Microsoft Entra, или для пользователей гибридных удостоверений Microsoft Entra. Этот метод поддерживает пользователей, которые хотят использовать учетные данные Windows, но локальный компьютер не присоединен к домену (например, с помощью удаленного доступа). В этом случае пользователь Windows может указать свою учетную запись домена и пароль, и может пройти проверку подлинности в Базе данных SQL, Управляемом экземпляре SQL или Azure Synapse.
Запустите SSMS или SSDT и на вкладке "Вход" диалогового окна "Подключение к серверу" (или "Подключение к ядро СУБД"):
- Укажите имя сервера в формате
<server-name>.database.windows.net
. - Для проверки подлинности выберите пароль Microsoft Entra Password.
- В поле "Имя пользователя" введите имя пользователя Microsoft Entra в формате
username@domain.com
. Имена пользователей должны быть учетной записью из идентификатора Microsoft Entra или учетной записи из управляемого или федеративного домена с идентификатором Microsoft Entra. - В поле "Пароль" введите пароль пользователя для учетной записи Microsoft Entra или управляемой или федеративной учетной записи домена.
- Для шифрования выберите "Строго" (SQL Server 2022 и SQL Azure), которые следует использовать для подключения к ресурсам SQL Azure.
- Укажите имя сервера в формате
На вкладке "Свойства подключения" в поле "Подключение к базе данных" введите имя пользовательской базы данных, к которой требуется подключиться.
Microsoft Entra MFA
Используйте этот метод для интерактивной проверки подлинности с многофакторной проверкой подлинности (MFA) с запросом пароля в интерактивном режиме. Этот метод можно использовать для проверки подлинности в базах данных в База данных SQL, Управляемый экземпляр SQL и Azure Synapse Analytics для пользователей облачных удостоверений Microsoft Entra или тех, кто использует гибридные удостоверения Microsoft Entra.
Ниже показано, как подключиться с помощью многофакторной проверки подлинности в последней версии SSMS.
Чтобы подключиться с помощью MFA, в диалоговом окне "Подключение к серверу " в SSMS выберите Microsoft Entra MFA.
Заполните поле имени сервера именем сервера. Заполните поле имени пользователя учетными данными Microsoft Entra в формате
user_name@domain.com
.Нажмите Подключиться.
Когда появится диалоговое окно входа в учетную запись , оно должно быть предварительно заполнено именем пользователя, указанным на шаге 2. Пароль не требуется, если пользователь является частью домена, федеративного с идентификатором Microsoft Entra.
Вам будет предложено выполнить проверку подлинности с помощью одного из методов, настроенных на основе параметра администратора MFA.
По завершении проверки SSMS обычно подключается, предполагая допустимые учетные данные и доступ к брандмауэру.
Субъект-служба Microsoft Entra
Используйте этот метод для проверки подлинности в базе данных в База данных SQL или Управляемый экземпляр SQL с помощью субъектов-служб Microsoft Entra (приложения Microsoft Entra). Дополнительные сведения см. в статье Microsoft Entra Service Principal with Azure SQL.
Управляемое удостоверение Microsoft Entra
Используйте этот метод для проверки подлинности в базе данных в База данных SQL или Управляемый экземпляр SQL с управляемыми удостоверениями Microsoft Entra. Дополнительные сведения см. в разделе "Управляемые удостоверения" в Microsoft Entra для SQL Azure.
Microsoft Entra Default
Параметр проверки подлинности по умолчанию с идентификатором Microsoft Entra включает проверку подлинности, которая выполняется с помощью менее паролей и неинтерактивных механизмов, включая управляемые удостоверения.
Подключение из клиентского приложения
В следующих процедурах показано, как подключиться к База данных SQL с удостоверением Microsoft Entra из клиентского приложения. Это не полный список методов проверки подлинности при использовании удостоверения Microsoft Entra. Дополнительные сведения см. в статье "Подключение к SQL Azure с помощью проверки подлинности Microsoft Entra" и SqlClient.
Настройка клиентских приложений
Примечание.
System.Data.SqlClient использует библиотеку проверки подлинности Azure Active Directory (ADAL), которая устарела. Если вы используете пространство имен System.Data.SqlClient для проверки подлинности Microsoft Entra, перенесите приложения в Microsoft.Data.SqlClient и библиотеку проверки подлинности Майкрософт (MSAL). Сведения о методах подключения, доступных в .NET, см. в статье "Подключение к SQL Azure" с проверкой подлинности Microsoft Entra и SqlClient.
Если вы должны продолжать использовать ADAL.DLL в приложениях, вы можете использовать ссылки в этом разделе, чтобы установить последний драйвер ODBC или OLE DB, содержащий последнюю библиотеку ADAL.DLL .
На всех клиентских компьютерах, из которых приложения или пользователи подключаются к База данных SQL или Azure Synapse Analytics с помощью удостоверений Microsoft Entra, необходимо установить следующее программное обеспечение:
- платформа .NET Framework версии 4.6 или более поздней версии.
- Библиотека проверки подлинности Майкрософт (MSAL) или библиотека проверки подлинности Майкрософт для SQL Server (ADAL.DLL). Ссылки на установку последних драйверов SSMS, ODBC и OLE DB, содержащих библиотеку ADAL.DLL , доступны здесь:
Вы можете выполнить эти требования, сделав следующее:
- Установка последней версии SQL Server Management Studio или SQL Server Data Tools в соответствии с требованием платформа .NET Framework 4.6.
Встроенная проверка подлинности Microsoft Entra
Чтобы использовать интегрированные проверка подлинности Windows, Active Directory вашего домена должен быть федеративным с идентификатором Microsoft Entra или управляемым доменом, настроенным для простого единого входа для сквозной или хэш-проверки подлинности паролей. Дополнительные сведения см. в статье Простой единый вход Microsoft Entra.
Клиентское приложение (или служба), подключающееся к базе данных, должно быть запущено на компьютере, присоединенном к домену, с учетными данными пользователя домена.
Чтобы подключиться к базе данных с помощью встроенной проверки подлинности и удостоверения Microsoft Entra, Authentication
необходимо задать Active Directory Integrated
ключевое слово в базе данных строка подключения. Замените <server_name>
именем логического сервера. В следующем примере кода C# используется ADO .NET.
string ConnectionString = @"Data Source=<server-name>.database.windows.net; Authentication=Active Directory Integrated; Initial Catalog=testdb;";
SqlConnection conn = new SqlConnection(ConnectionString);
conn.Open();
Ключевое слово Integrated Security=True
строка подключения не поддерживается для подключения к База данных SQL Azure. При подключении ODBC необходимо удалить пробелы и задать для проверки подлинности ActiveDirectoryIntegrated
значение .
Проверка подлинности паролей Microsoft Entra
Чтобы подключиться к базе данных с помощью учетных записей пользователей, доступных только для облака Microsoft Entra, или тех, кто использует гибридные удостоверения Microsoft Entra, необходимо задать Active Directory Password
ключевое слово authentication. Строка подключения должна содержать ключевые слова для идентификатора пользователя (UID) и пароля (PWD), а также их значения. Замените <server_name>
, <email_address>
и <password>
соответствующими значениями. В следующем примере кода C# используется ADO .NET.
string ConnectionString =
@"Data Source=<server-name>.database.windows.net; Authentication=Active Directory Password; Initial Catalog=testdb; UID=<email_address>; PWD=<password>";
SqlConnection conn = new SqlConnection(ConnectionString);
conn.Open();
Дополнительные сведения о методах проверки подлинности Microsoft Entra с помощью демонстрационных примеров кода, доступных на демонстрации GitHub проверки подлинности Microsoft Entra.
Маркер доступа идентификатора Microsoft Entra
Этот метод проверки подлинности позволяет службам среднего уровня получать веб-маркеры JSON (JWT) для подключения к базе данных в База данных SQL, Управляемый экземпляр SQL или Azure Synapse путем получения маркера из идентификатора Microsoft Entra. Этот способ позволяет использовать различные сценарии приложений, включая удостоверения служб, субъекты-службы и приложения, использующие проверку подлинности на основе сертификатов. Чтобы использовать проверку подлинности токена Microsoft Entra, необходимо выполнить четыре основных действия.
- Зарегистрируйте приложение с помощью идентификатора Microsoft Entra и получите идентификатор клиента для кода.
- Создайте пользователя базы данных, представляющего приложение (как описано в разделе "Создание содержащихся пользователей", сопоставленных с удостоверениями Microsoft Entra.)
- Создайте сертификат на клиентском компьютере, на котором выполняется приложение.
- Добавьте сертификат в качестве ключа для вашего приложения.
Пример строка подключения. Замените <server-name>
на имя логического сервера:
string ConnectionString = @"Data Source=<server-name>.database.windows.net; Initial Catalog=testdb;";
SqlConnection conn = new SqlConnection(ConnectionString);
conn.AccessToken = "Your JWT token";
conn.Open();
Дополнительные сведения см. в блоге о безопасности SQL Server. Сведения о добавлении сертификата см. в статье "Начало работы с проверкой подлинности на основе сертификатов" в идентификаторе Microsoft Entra.
Многофакторная проверка подлинности Microsoft Entra
Многофакторная проверка подлинности Microsoft Entra — это поддерживаемый метод проверки подлинности для всех средств SQL. Сведения о программной проверке подлинности с помощью идентификатора Microsoft Entra см. в обзоре библиотеки проверки подлинности Майкрософт (MSAL).
sqlcmd
Следующие инструкции подключаются с помощью версии 13.1 sqlcmd. Скачайте служебные программы командной строки Майкрософт 14.0 для SQL Server.
Примечание.
Команда sqlcmd
с -G
не работает с системными удостоверениями; для нее требуется вход субъекта-пользователя.
sqlcmd -S <database or datawarehouse name>.<server-name>.database.windows.net -G
sqlcmd -S <database or datawarehouse name>.<server-name>.database.windows.net -U adrian@contoso.com -P <password> -G -l 30
Подключение в редакторе запросов портал Azure (База данных SQL Azure)
Дополнительные сведения о редакторе запросов портал Azure для База данных SQL Azure см. в кратком руководстве. Использование редактора запросов портал Azure для запроса База данных SQL Azure.
Перейдите к базе данных SQL в портал Azure. Например, посетите панель мониторинга SQL Azure.
На странице обзора базы данных SQL в портал Azure выберите редактор запросов в меню слева.
На экране входа в разделе "Добро пожаловать в База данных SQL Редактор запросов" нажмите кнопку "Продолжить в качестве <пользователя или идентификатора> группы".
Связанный контент
- Авторизация доступа к Базе данных SQL, Управляемому экземпляру SQL и Azure Synapse Analytics
- Субъекты
- роли базы данных
- Правила брандмауэра для IP-адресов для Базы данных SQL Azure и Azure Synapse
- Создание гостевых пользователей Microsoft Entra и настройка их в качестве администратора Microsoft Entra
- Руководство по созданию пользователей Microsoft Entra с помощью приложений Microsoft Entra