Compartilhar via


Tutorial: Atribuir a função de Leitores de diretório a um grupo do Microsoft Entra e gerenciar atribuições de função

Aplica-se a:Banco de Dados SQL do AzureInstância Gerenciada de SQL do AzureAzure Synapse Analytics

Este artigo orienta você na criação de um grupo no Microsoft Entra ID (anteriormente Azure Active Directory) e na atribuição a esse grupo da função Leitores de Diretório. As permissões de Leitores de diretório permitem que os proprietários do grupo adicionem mais membros ao grupo, como uma identidade gerenciada do Banco de Dados SQL do Azure, da Instância Gerenciada de SQL do Azure e do Azure Synapse Analytics. Isso ignora a necessidade de um Administrador de funções com privilégios atribuir a função Leitores de diretório diretamente para cada identidade de servidor lógico no locatário.

Observação

O Microsoft Entra ID era conhecido anteriormente como Azure Active Directory (Azure AD).

Este tutorial usa o recurso apresentado em Usar grupos do Microsoft Entra para gerenciar atribuições de função.

Para obter mais informações sobre os benefícios de atribuir a função Leitores de diretório a um grupo do Microsoft Entra para SQL do Azure, confira Função Leitores de diretório no Microsoft Entra ID para SQL do Azure.

Observação

Com o suporte do Microsoft Graph para SQL do Azure, a função Leitores de Diretório pode ser substituída com o uso de permissões de nível inferior. Para obter mais informações, consulte Identidades gerenciadas no Microsoft Entra para SQL do Azure.

Pré-requisitos

Atribuição da função de Leitores de diretório usando o portal do Azure

Criar um grupo e atribuir proprietários e funções

  1. Um usuário com permissões de Administrador de Função Com Privilégios é necessário para essa configuração inicial.
  2. Faça com que o usuário com privilégios entre no portal do Azure.
  3. Vá para o recurso Microsoft Entra ID. Em Gerenciar, vá para Grupos. Selecione Novo grupo para criar um grupo.
  4. Selecione Segurança como o tipo de grupo e preencha o restante dos campos. Verifique se a configuração Funções do Microsoft Entra podem ser atribuídas ao grupo está definida como Sim. Em seguida, atribua a função de Leitores de diretório do Microsoft Entra ao grupo.
  5. Atribua usuários do Microsoft Entra como proprietários do grupo que foi criado. Um proprietário do grupo pode ser um usuário comum do AD, sem nenhuma função administrativa do Microsoft Entra atribuída. O proprietário deve ser um usuário que esteja gerenciando seu Banco de Dados SQL, sua Instância Gerenciada de SQL ou seu Azure Synapse.
  6. Escolha Criar

Verificar o grupo que foi criado

Observação

Verifique se o Tipo de Grupo é Segurança. Não há suporte para grupos do Microsoft 365 no SQL do Azure.

Para verificar e gerenciar o grupo criado, volte para o painel Grupos no portal do Azure e pesquise pelo nome do grupo. Proprietários e membros adicionais podem ser adicionados no menu Proprietários e Membros da configuração Gerenciar depois de selecionar o grupo. Você também pode examinar as Funções atribuídas para o grupo.

Captura de tela de um painel Grupo com os links que abrem os menus Configurações para Membros, Proprietários e Funções Atribuídas realçadas.

Adicionar identidade gerenciada do Azure SQL ao grupo

Observação

Estamos usando a Instância Gerenciada de SQL para este exemplo, mas etapas semelhantes podem ser aplicadas ao Banco de Dados SQL ou ao Azure Synapse para obter os mesmos resultados.

Para as etapas subsequentes, o usuário administrador de função com privilégios não é mais necessário.

  1. Entre no portal do Azure como o usuário que gerencia a Instância Gerenciada de SQL e é proprietário do grupo criado anteriormente.

  2. Localize o nome do recurso da instância gerenciada de SQL no portal do Azure.

    Captura de tela da tela de instâncias gerenciadas do SQL com o nome da instância SQL ssomitest e o nome da Sub-rede ManagedInstance realçado.

    Durante o provisionamento da Instância Gerenciada do SQL, uma identidade do Microsoft Entra é criada para sua instância, registrando-a como um aplicativo do Microsoft Entra. A identidade tem o mesmo nome que o prefixo do nome de sua Instância Gerenciada de SQL. Você pode encontrar a identidade (também conhecida como entidade de serviço) de sua Instância Gerenciada de SQL seguindo estas etapas:

    • Vá para o recurso Microsoft Entra ID. Na configuração Gerenciar, selecione Aplicativos empresariais. A ID do Objeto é a identidade da instância.

    Captura de tela da página Aplicativos empresariais para um recurso do Microsoft Entra ID com a ID de Objeto da Instância Gerenciada de SQL realçada.

  3. Vá para o recurso Microsoft Entra ID. Em Gerenciar, vá para Grupos. Selecione o grupo criado. Na configuração Gerenciar do grupo, selecione Membros. Selecione Adicionar membros e adicione a entidade de serviço da Instância Gerenciada de SQL como um membro do grupo pesquisando pelo nome encontrado acima.

Observação

Podem ser necessários alguns minutos para que as permissões da entidade de serviço sejam propagadas no sistema do Azure e o acesso ao Microsoft Graph seja permitido. Talvez você precise esperar alguns minutos antes de provisionar um administrador do Microsoft Entra para uma Instância SQL Gerenciada.

Comentários

Para o Banco de Dados SQL e o Azure Synapse, a identidade do servidor pode ser criada durante a criação do servidor lógico ou após a criação do servidor. Para obter mais informações sobre como criar ou definir a identidade do servidor no Banco de Dados SQL ou no Azure Synapse, confira Habilitar entidades de serviço para criar usuários do Microsoft Entra.

Para a Instância Gerenciada de SQL, atribua a função Leitores de diretório à identidade da instância gerenciada para configurar um administrador do Microsoft Entra para a instância gerenciada.

A atribuição da função de Leitores de diretório à identidade do servidor não é necessária para o Banco de Dados SQL nem para o Azure Synapse ao configurar um administrador do Microsoft Entra para o servidor lógico. No entanto, para habilitar a criação de objetos do Microsoft Entra no Banco de Dados SQL ou no Azure Synapse em nome de um aplicativo do Microsoft Entra, a função Leitores de Diretório (ou permissões de nível inferior discutidas em identidades gerenciadas no Microsoft Entra para SQL do Azure) é necessária. Se a função não for atribuída à identidade do servidor lógico, a criação de usuários do Microsoft Entra no SQL do Azure falhará. Para obter mais informações, consulte Entidades de serviço do Microsoft Entra com o Azure SQL.

Atribuição da função de Leitores de diretório usando o PowerShell

Importante

Um Administrador de Funções Com Privilégios precisará executar essas etapas iniciais. Além do PowerShell, o Microsoft Entra ID oferece a API do Microsoft Graph para Criar um grupo com funções atribuíveis no Microsoft Entra ID.

  1. Baixe o módulo Microsoft Graph PowerShell usando os comandos a seguir. Talvez seja necessário executar o PowerShell como administrador.

    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. Conecte-se a seu locatário do Microsoft Entra.

    Connect-MgGraph
    
  3. Crie um grupo de segurança para atribuir a função Leitores de diretório.

    • DirectoryReaderGroup, Directory Reader Group e DirRead podem ser alterados de acordo com sua preferência.
    $group = New-MgGroup -DisplayName "DirectoryReaderGroup" -Description "Directory Reader Group" -SecurityEnabled:$true -IsAssignableToRole:$true -MailEnabled:$false -MailNickname "DirRead"
    $group
    
  4. Atribua a função de Leitores de diretório ao grupo.

    # 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. Atribua proprietários ao grupo.

    • Substitua <username> pelo usuário que você deseja que seja proprietário do grupo. Vários proprietários podem ser adicionados repetindo essas etapas.
    $newGroupOwner = Get-MgUser -UserId "<username>"
    $newGroupOwner
    
    $GrOwner = New-MgGroupOwnerByRef -GroupId $group.Id -OdataId "https://graph.microsoft.com/v1.0/users/$($newGroupOwner.Id)" 
    

    Verifique os proprietários do grupo:

    Get-MgGroupOwner -GroupId $group.Id
    

    Você também pode verificar os proprietários do grupo no portal do Azure. Siga as etapas em Verificando o grupo criado.

Atribuir a entidade de serviço como um membro do grupo

Para as etapas subsequentes, o usuário administrador de função com privilégios não é mais necessário.

  1. Usando um proprietário do grupo que também gere o recurso Azure SQL, execute o comando a seguir para vincular a seu Microsoft Entra ID.

    Connect-MgGraph
    
  2. Atribua a entidade de serviço como um membro do grupo criado.

    # 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
    

    O seguinte comando retornará a ID de Objeto da entidade de serviço indicando que ela foi adicionada ao grupo:

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