Учебное пособие: Назначение роли Читателей каталога группе Microsoft Entra и управление назначениями ролей

В этой статье вы сможете создать группу в Microsoft Entra ID (ранее Azure Active Directory) и назначить этой группе роль Directory Readers. Назначение ролей позволяет владельцам групп добавлять управляемые удостоверения ресурсов Azure Synapse Analytics в группу. Этот подход позволяет избежать необходимости администратору Администратор привилегированных ролей напрямую назначать роль "Читатели каталога" каждому удостоверению.

В этом руководстве используется функция, представленная в разделе "Использование групп Microsoft Entra" для управления назначениями ролей.

Примечание.

Участники-службы сервера Microsoft Entra в настоящее время доступны в режиме предварительной версии для Azure Synapse Analytics.

Вместо роли Directory Readers вы можете назначать более низкоуровневые права Microsoft Graph, чтобы следовать принципу наименьших привилегий. Для получения дополнительной информации см. Managed identities in Microsoft Entra for Azure Synapse Analytics.

Prerequisites

Назначение ролей Directory Readers с помощью портала Azure

Создание новой группы и назначение владельцев и роли

  1. Для этой начальной настройки нужен пользователь с правами Privileged Role Administrator.
  2. Пусть привилегированный пользователь войдёт в портал Azure.
  3. Перейдите к ресурсу Microsoft Entra ID. В разделе "Управление" перейдите в раздел "Группы". Чтобы создать группу, выберите Создать группу.
  4. Выберите Безопасность в качестве типа группы и заполните остальные поля. Убедитесь, что для параметра роли Microsoft Entra могут быть назначены группе установлено значение Да. Затем назначьте группе роль Читатели каталога Microsoft Entra.
  5. Назначьте пользователей Microsoft Entra владельцами группы. Владелец группы может быть обычным пользователем Microsoft Entra без административной роли. Владелец должен быть пользователем, который управляет вашим ресурсом Azure Synapse.
  6. Нажмите кнопку "Создать".

Проверьте группу, которую вы создали

Примечание.

Убедитесь, что Тип группы — Безопасность. Azure Synapse SQL не поддерживает группы Microsoft 365.

Чтобы проверить и управлять созданной группой, вернитесь в панель Группы в портале Azure и найдите название вашей группы. Вы можете добавить больше владельцев и участников в меню «Владельцы» и «Участники» в настройке «Управление» после выбора вашей группы. Вы также можете просматривать назначенные роли для группы.

Добавьте управляемое удостоверение Azure Synapse в группу

Для следующих шагов вам больше не нужен пользователь Privileged Role Administrator.

  1. Войдите в портал Azure как пользователь, управляющий ресурсом Azure Synapse и владеющий созданной вами группой.

  2. Найдите управляемое удостоверение для вашей рабочей области Azure Synapse. Для получения информации об удостоверениях рабочей области см. Управляемое удостоверение службы для Azure Synapse Analytics.

  3. В Microsoft Entra ID в разделе «Управление» выберите «Корпоративные приложения». Найдите управляемую идентичность и укажите её Object ID.

  4. В Microsoft Entra ID, в разделе «Управление», выберите «Группы». Выберите группу, которую вы создали, а затем выберите «Члены>Добавить участников». Найдите и добавьте управляемое удостоверение Azure Synapse.

Примечание.

Может пройти несколько минут, прежде чем разрешения распространятся и откроют доступ к Microsoft Graph.

Remarks

Вы можете создать удостоверение сервера во время создания логического сервера или после его создания. Дополнительные сведения о том, как создать или задать удостоверение сервера в Azure Synapse, см. в разделе Управляемые удостоверения для Azure Synapse Analytics.

Назначение роли Directory Readers идентификатору сервера не требуется для Azure Synapse при настройке администратора Microsoft Entra для логического сервера. Однако для обеспечения создания объектов Microsoft Entra в Azure Synapse от имени приложения Microsoft Entra требуется роль Directory Readers (или права более низкого уровня, обсуждаемые в разделе Managed identities in Microsoft Entra for Azure SQL). Если вы не назначите роль удостоверению логического сервера, создание пользователей Microsoft Entra завершится с ошибкой.

Назначение роли "Читатели каталогов" с помощью PowerShell

Important

Администратор привилегированной роли должен выполнить эти начальные шаги. Помимо PowerShell, идентификатор Microsoft Entra предлагает API Microsoft Graph для создания группы с возможностью назначения ролей в идентификаторе Microsoft Entra.

  1. Скачайте модуль Microsoft Graph PowerShell, используя следующие команды. Возможно, вам потребуется запустить PowerShell от имени администратора.

    Install-Module Microsoft.Graph.Authentication
    Import-Module Microsoft.Graph.Authentication
    # To verify that the module is ready to use, run the following command:
    Get-Module Microsoft.Graph.Authentication
    
  2. Подключитесь к клиенту Microsoft Entra.

    Connect-MgGraph
    
  3. Создайте группу безопасности, чтобы назначить роль Читатели каталогов.

    • DirectoryReaderGroup, Directory Reader Group и DirRead можно изменить в соответствии с вашими предпочтениями.
    $group = New-MgGroup -DisplayName "DirectoryReaderGroup" -Description "Directory Reader Group" -SecurityEnabled:$true -IsAssignableToRole:$true -MailEnabled:$false -MailNickname "DirRead"
    $group
    
  4. Назначьте группе роль Directory Readers.

    # Displays the Directory Readers role information
    $roleDefinition = Get-MgRoleManagementDirectoryRoleDefinition -Filter "DisplayName eq 'Directory Readers'"
    $roleDefinition
    
    # Assigns the Directory Readers role to the group
    $roleAssignment = New-MgRoleManagementDirectoryRoleAssignment -DirectoryScopeId '/' -RoleDefinitionId $roleDefinition.Id -PrincipalId $group.Id
    $roleAssignment
    
  5. Назначьте группе владельцев.

    • Замените <username> именем пользователя, которого вы хотите назначить владельцем этой группы. Добавьте нескольких владельцев, повторите эти шаги.
    $newGroupOwner = Get-MgUser -UserId "<username>"
    $newGroupOwner
    
    $GrOwner = New-MgGroupOwnerByRef -GroupId $group.Id -OdataId "https://graph.microsoft.com/v1.0/users/$($newGroupOwner.Id)" 
    

    Проверьте владельцев группы:

    Get-MgGroupOwner -GroupId $group.Id
    

    Вы также можете проверить владельцев группы на портале Azure. Чтобы проверить созданную вами группу, смотрите раздел «Проверка созданной группы».

Назначение субъекта-службы в качестве члена группы

Для следующих шагов вам больше не нужен пользователь Privileged Role Administrator.

  1. Как владелец группы, который также управляет ресурсом Azure Synapse, выполните следующую команду для подключения к Microsoft Entra ID.

    Connect-MgGraph
    
  2. Назначьте субъект-службу членом созданной вами группы.

    # Returns the service principal of your Azure SQL resource
    $managedIdentity = Get-MgServicePrincipal -Filter "displayName eq '<ServerName>'"
    $managedIdentity
    
    # Adds the service principal to the group
    New-MgGroupMember -GroupId $group.Id -DirectoryObjectId $managedIdentity.Id
    

    Следующая команда вернет идентификатор объекта служебной учетной записи, указывая, что он был добавлен в группу:

    Get-MgGroupMember -GroupId $group.Id -Filter "Id eq '$($managedIdentity.Id)'"