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 Azure Instância Gerenciada de SQL do Azure Azure 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 contorna a necessidade de um Administrador Global ou Administrador de Funções com Privilégios para atribuir a função de Leitores de Diretório diretamente para cada identidade de servidor lógico no locatário.

Observação

O Microsoft Entra ID era anteriormente conhecido 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 de Leitores de diretório a um grupo do Microsoft Entra para o Azure SQL, confira Função de Leitores de diretório no Microsoft Entra para o Azure SQL.

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 saber mais, confira Identidade gerenciada atribuída pelo usuário no Microsoft Entra ID 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 Global ou Administrador de Funções com Privilégios é necessária 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 Gerenciado, 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ário(s) ao grupo 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.

    Microsoft Entra ID-new-group

  6. Escolha Criar

Verificando o grupo criado

Observação

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

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çados.

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 posteriores, o usuário com permissões de Administrador Global ou Administrador de Funções com Privilégios não é mais necessário.

  1. Faça logon na portal do Azure como o usuário que está gerenciando 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 da tela de instâncias gerenciadas do SQL com o nome da instância SQL ssomitest e o nome da Sub-rede ManagedInstance realçados.

    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 de 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 Gerenciado, vá para Grupos. Selecione o grupo criado. Na configuração Gerenciado 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.

    Captura de tela da página Membros de um recurso do Microsoft Entra com as opções realçadas para adicionar uma instância gerenciada de SQL como um novo membro.

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 à API do Microsoft Graph seja permitido. Talvez seja necessário aguardar alguns minutos antes de provisionar um administrador do Microsoft Entra para a Instância Gerenciada de SQL.

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, a função Leitores de Diretório deve ser atribuída à identidade da instância gerenciada para que você possa 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 um objeto 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 é 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 Entidade de serviço do Microsoft Entra com SQL do Azure.

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

Importante

Um Administrador Global ou 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 você precise 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 -DirectoryObjectId $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.

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

Para as etapas posteriores, o usuário com permissões de Administrador Global ou Administrador de Funções 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)'"
    

Próximas etapas