Использование многофакторной проверки подлинности AAD с базой данных SQL Azure и хранилищем данных SQL Azure (поддержка SSMS для MFA)Using Multi-factor AAD authentication with Azure SQL Database and Azure SQL Data Warehouse (SSMS support for MFA)

База данных SQL Azure и хранилище данных SQL Azure поддерживают подключения из SQL Server Management Studio (SSMS) с использованием универсальной проверки подлинности Active Directory.Azure SQL Database and Azure SQL Data Warehouse support connections from SQL Server Management Studio (SSMS) using Active Directory Universal Authentication. В этой статье обсуждаются различия между различными вариантами проверки подлинности, а также ограничения, связанные с использованием универсальной проверки подлинности.This article discusses the differences between the various authentication options, and also the limitations associated with using Universal Authentication.

Скачивание последней версии SSMS. Скачайте последнюю версию SSMS на клиентский компьютер, воспользовавшись страницей Скачивание SQL Server Management Studio (SSMS).Download the latest SSMS - On the client computer, download the latest version of SSMS, from Download SQL Server Management Studio (SSMS).

Для всех функций, описанных в этой статье, используйте версию 17,2 не ниже 2017 июля.For all the features discussed in this article, use at least July 2017, version 17.2. Диалоговое окно «Последнее подключение» должно выглядеть следующим образом:The most recent connection dialog box, should look similar to the following image:

1mfa-universal-connect1mfa-universal-connect

Пять параметров аутентификацииThe five authentication options

Active Directory универсальная проверка подлинности поддерживает два неинтерактивных метода проверки подлинности:Active Directory Universal Authentication supports the two non-interactive authentication methods: - Проверка подлинности Active Directory - PasswordActive Directory - Password authentication - Проверка подлинности Active Directory - IntegratedActive Directory - Integrated authentication

Существуют две неинтерактивные модели проверки подлинности, которые можно использовать во многих разных приложениях (ADO.NET, ЖДКБ, ODC и т. д.).There are two non-interactive authentication models as well, which can be used in many different applications (ADO.NET, JDCB, ODC, etc.). Эти два метода никогда не приводят к появлению всплывающих диалоговых окон:These two methods never result in pop-up dialog boxes:

  • Active Directory - Password
  • Active Directory - Integrated

Интерактивный метод также поддерживает многофакторную идентификацию Azure (MFA):The interactive method is that also supports Azure multi-factor authentication (MFA) is:

  • Active Directory - Universal with MFA

Azure MFA помогает защитить доступ к данным и приложениям, при этом не усложняя процесс входа пользователей в систему.Azure MFA helps safeguard access to data and applications while meeting user demand for a simple sign-in process. Она обеспечивает надежную аутентификацию с использованием ряда простых вариантов подтверждения: телефонного звонка, текстового сообщения, смарт-карты с ПИН-кодом или уведомления в мобильном приложении. Пользователи сами выбирают предпочтительный способ подтверждения.It delivers strong authentication with a range of easy verification options (phone call, text message, smart cards with pin, or mobile app notification), allowing users to choose the method they prefer. Интерактивная MFA с использованием Azure AD может привести к появлению всплывающего диалогового окна для реализации проверки.Interactive MFA with Azure AD can result in a pop-up dialog box for validation.

Общие сведения о Многофакторной идентификации см. в этой статье.For a description of Multi-Factor Authentication, see Multi-Factor Authentication. Инструкции по настройке см. в разделе Настройка многофакторной проверки подлинности в Базе данных SQL Azure для SQL Server Management Studio.For configuration steps, see Configure Azure SQL Database multi-factor authentication for SQL Server Management Studio.

Параметр доменного имени или идентификатора клиента Azure ADAzure AD domain name or tenant ID parameter

Начиная с SSMS версии 17, пользователи, импортируемые в текущий каталог Active Directory из других каталогов Azure Active Directory в качестве гостевых пользователей, могут при подключении указывать доменное имя или идентификатор клиента Azure AD.Beginning with SSMS version 17, users that are imported into the current Active Directory from other Azure Active Directories as guest users, can provide the Azure AD domain name, or tenant ID when they connect. К гостевым пользователям относятся пользователи, приглашенные из других каталогов Azure AD, учетные записи Майкрософт, такие как outlook.com, hotmail.com и live.com, или другие учетные записи, например, gmail.com.Guest users include users invited from other Azure ADs, Microsoft accounts such as outlook.com, hotmail.com, live.com, or other accounts like gmail.com. Эта информация позволяет службе универсальной аутентификации Active Directory с MFA определить правильный центр аутентификации.This information, allows Active Directory Universal with MFA Authentication to identify the correct authenticating authority. Этот параметр также является обязательным для поддержки учетных записей Майкрософт (MSA), таких как outlook.com, hotmail.com или live.com, и сторонних учетных записей.This option is also required to support Microsoft accounts (MSA) such as outlook.com, hotmail.com, live.com, or non-MSA accounts. Все пользователи, которые хотят выполнить аутентификацию с помощью универсальной проверки подлинности, должны ввести свое доменное имя или идентификатор клиента Azure AD.All these users who want to be authenticated using Universal Authentication must enter their Azure AD domain name or tenant ID. Этот параметр представляет собой текущее значение доменного имени или идентификатора клиента Azure AD, с которым связан сервер Azure.This parameter represents the current Azure AD domain name/tenant ID the Azure Server is linked with. Например, если сервер Azure связан с доменом Azure AD contosotest.onmicrosoft.com, где пользователь joe@contosodev.onmicrosoft.com размещен в качестве импортированного пользователя из домена Azure AD contosodev.onmicrosoft.com, то доменное имя, необходимое для аутентификации этого пользователя, — contosotest.onmicrosoft.com.For example, if Azure Server is associated with Azure AD domain contosotest.onmicrosoft.com where user joe@contosodev.onmicrosoft.com is hosted as an imported user from Azure AD domain contosodev.onmicrosoft.com, the domain name required to authenticate this user is contosotest.onmicrosoft.com. Если пользователь является собственным пользователем Azure AD, связанным с сервером Azure, а не пользователем с учетной записью MSA, то доменное имя или идентификатор клиента не требуются.When the user is a native user of the Azure AD linked to Azure Server, and is not an MSA account, no domain name or tenant ID is required. Чтобы ввести параметр (начиная с SSMS версии 17,2), в диалоговом окне Подключение к базе данных заполните диалоговое окно, выбрав Active Directory-Universal с проверкой подлинности MFA, щелкните Параметры, завершите имя пользователя. и перейдите на вкладку Свойства соединения . Проверьте поле доменное имя AD или идентификатор клиента и укажите центр проверки подлинности, например доменное имя (ContosoTest.onmicrosoft.com) или идентификатор GUID идентификатора клиента.To enter the parameter (beginning with SSMS version 17.2), in the Connect to Database dialog box, complete the dialog box, selecting Active Directory - Universal with MFA authentication, click Options, complete the User name box, and then click the Connection Properties tab. Check the AD domain name or tenant ID box, and provide authenticating authority, such as the domain name (contosotest.onmicrosoft.com) or the GUID of the tenant ID.
mfa-tenant-ssmsmfa-tenant-ssms

Если вы используете SSMS 18. x или более поздней версии, имя домена AD или идентификатор клиента больше не требуется для гостевых пользователей, поскольку 18. x или более поздней версии автоматически распознает его.If you are running SSMS 18.x or later then the AD domain name or tenant ID is no longer needed for guest users because 18.x or later automatically recognizes it.

MFA-клиент-SSMS

Поддержка Azure AD B2BAzure AD business to business support

Пользователи Azure AD, поддерживаемые в качестве гостевых пользователей в сценариях Azure AD B2B (см. раздел Что такое служба совместной работы Azure AD B2B), могут подключиться к Базе данных SQL и хранилищу данных SQL только в составе группы, созданной в текущем каталоге Azure AD и вручную сопоставленной в заданной базе данных с помощью инструкции CREATE USER Transact-SQL.Azure AD users supported for Azure AD B2B scenarios as guest users (see What is Azure B2B collaboration) can connect to SQL Database and SQL Data Warehouse only as part of members of a group created in current Azure AD and mapped manually using the Transact-SQL CREATE USER statement in a given database. Например, если пользователь steve@gmail.com приглашен в Azure AD contosotest (с доменом Azure AD contosotest.onmicrosoft.com), то в каталоге Azure AD, который содержит участника usergroup, нужно создать группу Azure AD, например steve@gmail.com.For example, if steve@gmail.com is invited to Azure AD contosotest (with the Azure Ad domain contosotest.onmicrosoft.com), an Azure AD group, such as usergroup must be created in the Azure AD that contains the steve@gmail.com member. Затем эту группу необходимо создать для конкретной базы данных (то есть MyDatabase) с помощью администратора SQL Azure AD или Azure AD DBO, выполнив инструкцию Transact-SQL CREATE USER [usergroup] FROM EXTERNAL PROVIDER.Then, this group must be created for a specific database (that is, MyDatabase) by Azure AD SQL admin or Azure AD DBO by executing a Transact-SQL CREATE USER [usergroup] FROM EXTERNAL PROVIDER statement. После создания пользователя базы данных пользователь steve@gmail.com сможет войти в MyDatabase с помощью параметра аутентификации SSMS Active Directory – Universal with MFA support.After the database user is created, then the user steve@gmail.com can log in to MyDatabase using the SSMS authentication option Active Directory – Universal with MFA support. Группа пользователей по умолчанию имеет только разрешение на подключение, и дополнительные возможности доступа к данным потребуется предоставить обычным способом.The usergroup, by default, has only the connect permission and any further data access that will need to be granted in the normal way. Обратите внимание на то, что пользователь steve@gmail.com как гость должен установить флажок и добавить доменное имя AD contosotest.onmicrosoft.com в диалоговом окне Свойства соединения SSMS.Note that user steve@gmail.com as a guest user must check the box and add the AD domain name contosotest.onmicrosoft.com in the SSMS Connection Property dialog box. Параметр Доменное имя AD или идентификатор клиента поддерживается только для параметра {3}Universal with MFA connection{4} (Универсальная с подключением MFA), в противном случае он неактивен.The AD domain name or tenant ID option is only supported for the Universal with MFA connection options, otherwise it is greyed out.

Ограничения универсальной аутентификации для базы данных SQL и хранилища данных SQLUniversal Authentication limitations for SQL Database and SQL Data Warehouse

  • SSMS и SqlPackage.exe — единственные инструменты, в настоящее время поддерживающее MFA с помощью универсальной аутентификации Active Directory.SSMS and SqlPackage.exe are the only tools currently enabled for MFA through Active Directory Universal Authentication.
  • SSMS версии 17.2 поддерживает одновременный доступ нескольких пользователей с помощью универсальной аутентификации с MFA.SSMS version 17.2, supports multi-user concurrent access using Universal Authentication with MFA. В версиях 17.0 и 17.1 только одна учетная запись Azure Active Directory может войти в экземпляр SSMS с использованием универсальной аутентификации.Version 17.0 and 17.1, restricted a login for an instance of SSMS using Universal Authentication to a single Azure Active Directory account. Чтобы войти с другой учетной записью Azure AD, необходимо использовать другой экземпляр SSMS.To log in as another Azure AD account, you must use another instance of SSMS. (Это ограничение относится только к универсальной аутентификации Active Directory. Вы можете войти на разные серверы, используя проверку пароля Active Directory, встроенную аутентификацию Active Directory или аутентификацию SQL Server).(This restriction is limited to Active Directory Universal Authentication; you can log in to different servers using Active Directory Password Authentication, Active Directory Integrated Authentication, or SQL Server Authentication).
  • SSMS поддерживает универсальную аутентификацию Active Directory для отображения обозревателя объектов, редактора запросов и хранилища запросов.SSMS supports Active Directory Universal Authentication for Object Explorer, Query Editor, and Query Store visualization.
  • SSMS версии 17.2 поддерживает мастер DacFx для экспорта, извлечения и развертывания данных базы данных.SSMS version 17.2 provides DacFx Wizard support for Export/Extract/Deploy Data database. После того, как пользователь пройдет универсальную аутентификацию в диалоговом окне начальной аутентификации, мастер DacFx функционирует так же, как и для всех других методов аутентификации.Once a specific user is authenticated through the initial authentication dialog using Universal Authentication, the DacFx Wizard functions the same way it does for all other authentication methods.
  • Конструктор таблиц SSMS не поддерживает универсальную аутентификацию.The SSMS Table Designer does not support Universal Authentication.
  • Для универсальной аутентификации Active Directory не требуется дополнительное программное обеспечение, за исключением того, что необходимо использовать поддерживаемую версию SSMS.There are no additional software requirements for Active Directory Universal Authentication except that you must use a supported version of SSMS.
  • Версия библиотеки аутентификации Active Directory (ADAL) для универсальной аутентификации была обновлена до последней выпущенной версии ADAL.dll — 3.13.9.The Active Directory Authentication Library (ADAL) version for Universal authentication was updated to its latest ADAL.dll 3.13.9 available released version. Ознакомьтесь с библиотекой аутентификации Active Directory версии 3.14.1.See Active Directory Authentication Library 3.14.1.

Дальнейшие действияNext steps