Создание гостевых пользователей Microsoft Entra и настройка их в качестве администратора Microsoft Entra

Применимо к:База данных SQL Azure Управляемый экземпляр SQL AzureSQL Server на виртуальной машине Azure

Примечание.

Эта функция применяется к SQL Server 2022 и более поздним версиям на виртуальных машинах Azure и SQL Server с поддержкой Arc.

Гостевые пользователи для совместной работы Microsoft Entra B2B — это пользователи, имеющие учетные записи во внешней организации Microsoft Entra или у внешнего поставщика удостоверений (например, Outlook, Почта Windows Live или Gmail), которыми не управляет ваш клиент Microsoft Entra. Учетные записи гостевых пользователей создаются, когда эти лица приглашены для совместной работы в клиенте, а также выполняют проверку подлинности с помощью поставщика удостоверений.

В этой статье показано, как создать гостевого пользователя Microsoft Entra и назначить его администратором Microsoft Entra для управляемого экземпляра Azure SQL или логического сервера в Azure, используемого для базы данных Azure SQL и Azure Synapse Analytics.

Примечание.

Microsoft Entra ID ранее назывался Azure Active Directory (Azure AD).

Описание функции

База данных SQL Azure, Управляемый экземпляр SQL и Azure Synapse Analytics поддерживают создание субъектов из гостевых учетных записей пользователей напрямую или как членов групп Microsoft Entra в клиенте. Гостевые пользователи также могут быть назначены администраторами Microsoft Entra для логического сервера или управляемого экземпляра.

Предварительные условия

  • Модуль Az.Sql 2.9.0 или более поздней версии необходим при использовании PowerShell для установки гостевого пользователя в качестве администратора Microsoft Entra для логического сервера или управляемого экземпляра.

Создание пользователя базы данных для гостевого пользователя Microsoft Entra

Выполните следующие действия, чтобы создать пользователя базы данных с помощью гостевого пользователя Microsoft Entra. В этом разделе замените <guest_user> на допустимый адрес электронной почты, например guest_user@example.com.

  1. Убедитесь, что гостевой пользователь уже добавлен в идентификатор Microsoft Entra, а администратор Microsoft Entra установлен для сервера базы данных. Наличие администратора Microsoft Entra требуется для проверки подлинности Microsoft Entra.

  2. Подключитесь к базе данных SQL в качестве администратора Microsoft Entra или пользователя Microsoft Entra с достаточными разрешениями SQL для создания пользователей и выполните следующую команду в базе данных, в которой необходимо добавить гостевого пользователя:

    CREATE USER [<guest_user>] FROM EXTERNAL PROVIDER;
    
  3. Теперь для гостевого пользователя должен быть создан пользователь базы данных.

  4. Выполните следующую команду, чтобы убедиться, что пользователь базы данных успешно создан:

    SELECT * FROM sys.database_principals;
    
  5. Отключитесь, а затем войдите в базу данных в качестве гостевого пользователя с помощью SQL Server Management Studio (SSMS), используя метод проверки подлинности Azure Active Directory - универсальный с MFA. Дополнительные сведения см. в разделе "Использование многофакторной проверки подлинности Microsoft Entra".

Установка гостевого пользователя в качестве администратора Microsoft Entra

Задайте администратора Microsoft Entra с помощью портала Azure, Azure PowerShell или Azure CLI. В этом разделе замените <guest_user> на допустимый адрес электронной почты, например guest_user@example.com.

Примечание.

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

Портал Azure

Чтобы настроить администратора Microsoft Entra для логического сервера или управляемого экземпляра с помощью портал Azure, выполните следующие действия.

  1. Откройте портал Azure.
  2. Перейдите на страницу Microsoft Entra вашего ресурса сервера SQL или управляемого экземпляра в разделе Настройки.
  3. Выберите "Задать администратора", чтобы открыть панель Microsoft Entra ID.
  4. В панели Microsoft Entra ID введите имя учетной записи гостевого пользователя.
  5. Выберите этого нового пользователя и сохраните результаты.

Дополнительные сведения см. в разделе "Настройка администратора Microsoft Entra".

Azure PowerShell (База данных SQL и Azure Synapse)

Чтобы настроить гостевого пользователя Microsoft Entra для логического сервера, выполните следующие действия.

  1. Убедитесь, что гостевой пользователь уже добавлен в клиент Microsoft Entra.

  2. Выполните следующую команду PowerShell, чтобы добавить гостевого пользователя в качестве администратора Microsoft Entra для логического сервера:

    • Замените <ResourceGroupName> именем группы ресурсов Azure, содержащей логический сервер.
    • Замените <ServerName> именем логического сервера. Если имя сервера myserver.database.windows.net, замените <Server Name> на myserver.
    • Замените <DisplayNameOfGuestUser> именем гостевого пользователя.
    Set-AzSqlServerActiveDirectoryAdministrator -ResourceGroupName <ResourceGroupName> -ServerName <ServerName> -DisplayName <DisplayNameOfGuestUser>
    

Вы также можете использовать команду Azure CLI az sql server ad-admin , чтобы задать гостевого пользователя в качестве администратора Microsoft Entra для логического сервера.

Azure PowerShell (Управляемый экземпляр SQL)

Чтобы настроить гостевого пользователя Microsoft Entra для управляемого экземпляра, выполните следующие действия.

  1. Убедитесь, что гостевой пользователь уже добавлен в клиент Microsoft Entra.

  2. Перейдите на портал Azure и перейдите к ресурсу Microsoft Entra ID. В разделе Управление перейдите к панели Пользователи. Выберите гостевого пользователя и запишите Object ID.

  3. ** Выполните следующую команду PowerShell, чтобы добавить гостевого пользователя в качестве администратора Microsoft Entra для SQL Управляемого экземпляра:

    • Замените <ResourceGroupName> именем группы ресурсов Azure, содержащей Управляемый экземпляр SQL.
    • Замените <ManagedInstanceName> именем Управляемого экземпляра SQL.
    • Замените <DisplayNameOfGuestUser> именем гостевого пользователя.
    • Замените <AADObjectIDOfGuestUser> на ранее полученный Object ID.
    Set-AzSqlInstanceActiveDirectoryAdministrator -ResourceGroupName <ResourceGroupName> -InstanceName "<ManagedInstanceName>" -DisplayName <DisplayNameOfGuestUser> -ObjectId <AADObjectIDOfGuestUser>
    

Вы также можете использовать команду Azure CLI az sql mi ad-admin , чтобы задать гостевого пользователя в качестве администратора Microsoft Entra для управляемого экземпляра.