Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a: SQL Server 2025 (17.x)
Este artigo fornece instruções passo a passo para configurar a identidade gerida do Microsoft Entra ID para o SQL Server ativado pelo Azure Arc.
Para uma visão geral da identidade gerida com SQL Server, veja Identidade gerida para SQL Server ativada pelo Azure Arc.
Pré-requisitos
Antes de poder usar uma identidade gerida com o SQL Server ativado pelo Azure Arc, certifique-se de que cumpre os seguintes pré-requisitos:
- Suportado para SQL Server 2025 e posteriores, a executar no Windows.
- Conecte seu SQL Server ao Azure Arc.
- A versão mais recente da Extensão do Azure para SQL Server.
Habilitar a identidade gerenciada principal
Se você instalou a Extensão do Azure para SQL Server em seu servidor, poderá habilitar a identidade gerenciada primária para sua instância do SQL Server diretamente do portal do Azure. Também é possível habilitar a identidade gerenciada principal manualmente atualizando o registro, mas deve ser feito com extrema cautela.
- portal do Azure
- manualmente
Para habilitar a identidade gerenciada principal no portal do Azure, siga estas etapas:
Vá para o recurso SQL Server habilitado pelo Azure Arc no portal do Azure.
Em Configurações, selecione Microsoft Entra ID e Purview para abrir a página Microsoft Entra ID e Purview .
Observação
Se você não vir a opção Habilitar autenticação do Microsoft Entra ID , verifique se sua instância do SQL Server está conectada ao Azure Arc e se você tem a extensão SQL mais recente instalada.
Na página ID e Purview do Microsoft Entra, marque a caixa ao lado de Usar uma identidade gerida principal e use Guardar para aplicar a sua configuração:
Conceder permissões de acesso ao aplicativo à identidade
Importante
Somente um Administrador de Função Privilegiada ou uma função superior pode conceder essas permissões.
A identidade gerida atribuída pelo sistema, que usa o nome da máquina com suporte para Arc, deve ter as seguintes permissões de aplicativo do Microsoft Graph (funções do aplicativo):
User.Read.All: Permite o acesso às informações do usuário do Microsoft Entra.
GroupMember.Read.All: Permite o acesso às informações do grupo Microsoft Entra.
Application.Read.ALL: Permite o acesso às informações da entidade de serviço (aplicativo) do Microsoft Entra.
Você pode usar o PowerShell para conceder as permissões necessárias para a identidade gerenciada. Como alternativa, você pode criar um grupo atribuível por função. Depois de o grupo ser criado, atribua a função de Leitores de Diretório ou as permissões User.Read.All, GroupMember.Read.All e Application.Read.All ao grupo e adicione todas as identidades geridas pelo sistema atribuídas às suas máquinas com suporte a Azure Arc ao grupo. Não recomendamos o uso da função Leitores de Diretório em seu ambiente de produção.
O script PowerShell a seguir concede as permissões necessárias para a identidade gerenciada. Verifique se esse script é executado no PowerShell 7.5 ou em uma versão posterior e se o módulo 2.28 ou posterior está Microsoft.Graph instalado.
# Set your Azure tenant and managed identity name
$tenantID = '<Enter-Your-Azure-Tenant-Id>'
$managedIdentityName = '<Enter-Your-Arc-HostMachine-Name>'
# Connect to Microsoft Graph
try {
Connect-MgGraph -TenantId $tenantID -ErrorAction Stop
Write-Output "Connected to Microsoft Graph successfully."
}
catch {
Write-Error "Failed to connect to Microsoft Graph: $_"
return
}
# Get Microsoft Graph service principal
$graphAppId = '00000003-0000-0000-c000-000000000000'
$graphSP = Get-MgServicePrincipal -Filter "appId eq '$graphAppId'"
if (-not $graphSP) {
Write-Error "Microsoft Graph service principal not found."
return
}
# Get the managed identity service principal
$managedIdentity = Get-MgServicePrincipal -Filter "displayName eq '$managedIdentityName'"
if (-not $managedIdentity) {
Write-Error "Managed identity '$managedIdentityName' not found."
return
}
# Define roles to assign
$requiredRoles = @(
"User.Read.All",
"GroupMember.Read.All",
"Application.Read.All"
)
# Assign roles using scoped syntax
foreach ($roleValue in $requiredRoles) {
$appRole = $graphSP.AppRoles | Where-Object {
$_.Value -eq $roleValue -and $_.AllowedMemberTypes -contains "Application"
}
if ($appRole) {
try {
New-MgServicePrincipalAppRoleAssignment -ServicePrincipalId $managedIdentity.Id `
-PrincipalId $managedIdentity.Id `
-ResourceId $graphSP.Id `
-AppRoleId $appRole.Id `
-ErrorAction Stop
Write-Output "Successfully assigned role '$roleValue' to '$managedIdentityName'."
}
catch {
Write-Warning "Failed to assign role '$roleValue': $_"
}
}
else {
Write-Warning "Role '$roleValue' not found in Microsoft Graph AppRoles."
}
}
Criar logins e usuários
Siga as etapas no tutorial do Microsoft Entra para criar logons e usuários para a identidade gerenciada.