Поделиться через


Проверка подлинности Microsoft Entra для SQL Server

Область применения: SQL Server 2022 (16.x)

SQL Server 2022 (16.x) предоставляет поддержку проверки подлинности с помощью идентификатора Microsoft Entra (ранее Azure Active Directory) в локальной среде Windows и Linux и SQL Server на виртуальных машинах Windows Windows.

Используйте идентификатор Microsoft Entra с автономными экземплярами SQL Server или группами доступности AlwaysOn. Экземпляры отказоустойчивого кластера SQL Server в настоящее время не поддерживают аутентификацию Microsoft Entra.

Обзор

Теперь вы можете подключиться к SQL Server с помощью следующих методов проверки подлинности Microsoft Entra:

  • Стандартная проверка подлинности
  • Имя пользователя и пароль
  • Интегрированный
  • Универсальная с многофакторной проверкой подлинности
  • Субъект-служба
  • Управляемая идентификация
  • Маркер доступа

Существующие режимы проверки подлинности, проверка подлинности SQL и проверка подлинности Windows остаются неизменными.

Идентификатор Microsoft Entra — это облачная служба управления удостоверениями и доступом Azure. Идентификатор Microsoft Entra концептуально похож на Active Directory, предоставляя централизованный репозиторий для управления доступом к ресурсам вашей организации. Удостоверения — это объекты в Microsoft Entra ID, представляющие пользователей, группы или приложения. Их можно назначать с помощью управления доступом на основе ролей и использовать для проверки подлинности в ресурсах Azure. Поддерживается проверка подлинности Microsoft Entra для:

  • База данных SQL Azure
  • Управляемый экземпляр SQL Azure
  • SQL Server на виртуальных машинах Windows Azure
  • Azure Synapse Analytics
  • SQL Server

Дополнительные сведения см. в статье Об использовании проверки подлинности Microsoft Entra с помощью SQL Azure и настройке проверки подлинности Microsoft Entra с помощью SQL Azure и управления ими.

Если ваш Windows Server Active Directory включён в федерацию с Microsoft Entra ID, пользователи могут аутентифицироваться в SQL Server, используя свои учетные данные Windows, как учетные записи Windows, так и учетные записи Microsoft Entra. Хотя Microsoft Entra ID не поддерживает все функции AD, доступные в Windows Server Active Directory, такие как учетные записи служб или сложная архитектура сетевых лесов. Существуют другие возможности идентификатора Microsoft Entra, например многофакторную проверку подлинности, которая недоступна в Active Directory. Сравните идентификатор Microsoft Entra с Active Directory , чтобы узнать больше.

Подключение SQL Server к Azure с помощью идентификатора Microsoft Entra

Настройка проверки подлинности Microsoft Entra с помощью Azure Arc

Чтобы SQL Server взаимодействовал с Azure, SQL Server и хост на Windows или Linux, на котором он работает, могут быть зарегистрированы в Azure Arc. Чтобы обеспечить взаимодействие SQL Server с Azure, необходимо установить агент Azure Arc и расширение Azure для SQL Server.

Инструкции по началу работы см. в разделе Подключение SQL Server к Azure Arc.

Примечание.

Если вы используете SQL Server на виртуальной машине Azure, вам не нужно зарегистрировать виртуальную машину в Azure Arc, вместо этого необходимо зарегистрировать виртуальную машину с расширением агента IaaS SQL. После регистрации виртуальной машины см. сведения о включении проверки подлинности Azure AD для SQL Server на виртуальных машинах Azure для получения дополнительной информации.

Настройка проверки подлинности Microsoft Entra без Azure Arc

Вы также можете настроить проверку подлинности Microsoft Entra для SQL Server в Windows без использования Azure Arc. Этот подход включает вручную настройку сертификатов, параметров реестра и регистрации приложений идентификатора Microsoft Entra. Подробные инструкции см. в руководстве по включению проверки подлинности Microsoft Entra для SQL Server в Windows без Azure Arc.

Стандартная проверка подлинности

Параметр проверки подлинности по умолчанию в Microsoft Entra ID, который обеспечивает аутентификацию с помощью безпарольных и неинтерактивных механизмов, включая управляемые удостоверения, Visual Studio, Visual Studio Code, Azure CLI и многое другое.

Имя пользователя и пароль

Позволяет указать имя пользователя и пароль для клиента и драйвера. Метод имени пользователя и пароля обычно отключен для многих клиентов по соображениям безопасности. Хотя подключения шифруются, рекомендуется избежать использования имени пользователя и пароля, если это возможно, так как это требует отправки паролей по сети.

Интегрированный

С помощью интегрированной проверки подлинности Windows (IWA) Microsoft Entra ID предоставляет решение для организаций как с локальной, так и с облачной инфраструктурой. Локальные домены Active Directory можно синхронизировать с Microsoft Entra ID с помощью федерации, что позволяет управлять и контролировать доступ в Microsoft Entra ID, в то время как проверка подлинности пользователей остается локальной. С помощью IWA учетные данные Windows пользователя проходят проверку подлинности в Active Directory, и после успешной аутентификации токен проверки подлинности пользователя из Microsoft Entra ID возвращается в SQL.

Универсальная с многофакторной проверкой подлинности

Это стандартный интерактивный метод с параметром многофакторной проверки подлинности для учетных записей Microsoft Entra. Это работает в большинстве сценариев.

Субъект-служба

Принципал службы — это учетная запись, которую можно создать для использования с автоматизированными инструментами, заданиями и приложениями. С помощью метода проверки подлинности учетной записи службы можно подключиться к экземпляру SQL Server, используя идентификатор клиента и секрет учетной записи службы.

Управляемая идентификация

Управляемые удостоверения — это специальные формы принципалов службы. Существует два типа управляемых удостоверений: назначаемые системой и назначаемые пользователем. Управляемые удостоверения, назначаемые системой, включены непосредственно в ресурсе Azure, в то время как назначаемые пользователем управляемые удостоверения являются автономным ресурсом, который можно назначить одному или нескольким ресурсам Azure.

Примечание.

Чтобы использовать управляемое удостоверение для подключения к ресурсу SQL через клиенты GUI, такие как SSMS и ADS, компьютер, на котором запущено клиентское приложение, должен иметь клиент Microsoft Entra, работающий с сертификатом удостоверения, хранящимся в нем. Это чаще всего достигается с помощью виртуальной машины Azure, так как идентификацию можно легко назначить машине через интерфейс портала виртуальной машины.

Для инструментов, использующих библиотеки удостоверений Azure, например SQL Server Management Studio (SSMS), при подключении с управляемым удостоверением необходимо использовать GUID для входа, например abcd1234-abcd-1234-abcd-abcd1234abcd1234. Дополнительные сведения см. в разделе (ManagedIdentityCredential). Если вы неправильно передайте имя пользователя, возникает ошибка, например:

ManagedIdentityCredential authentication unavailable. The requested identity has not been assigned to this resource.
Status: 400 (Bad Request)
Content:
{"error":"invalid_request","error_description":"Identity not found"}

Маркер доступа

Некоторые клиенты, не использующие графический пользовательский интерфейс, такие как Invoke-sqlcmd, предоставляют маркер доступа. Сфера действия или аудитория токена доступа должна быть https://database.windows.net/.

Замечания

  • Для проверки подлинности Microsoft Entra поддерживается только локальная среда SQL Server 2022 (16.x) с поддерживаемой операционной системой Windows или Linux или SQL Server 2022 на виртуальных машинах Windows Azure.
  • Чтобы подключить SQL Server к Azure Arc, учетной записи Microsoft Entra требуются следующие разрешения:
    • Участник группы Azure Connected Machine Onboarding или Автор в группе ресурсов.
    • Участник роли Администратор ресурсов Azure Connected Machine в группе ресурсов.
    • Участник роли Читатель в группе ресурсов.
  • Проверка подлинности Microsoft Entra не поддерживается для экземпляров отказоустойчивого кластера SQL Server