Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você 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 gerenciada do Microsoft Entra ID para SQL Server, ativada pelo Azure Arc.
Para obter uma visão geral da identidade gerenciada com o SQL Server, consulte a identidade gerenciada do SQL Server habilitada pelo Azure Arc.
Pré-requisitos
Antes de poder usar uma identidade gerenciada com o SQL Server habilitado pelo Azure Arc, verifique se você atende aos seguintes pré-requisitos:
- Com suporte para o SQL Server 2025 e posterior, em execução no Windows.
- Conecte o SQL Server ao Azure Arc.
- A versão mais recente da Extensão do Azure para SQL Server.
Habilitar a identidade gerenciada primária
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 primária manualmente atualizando o registro, mas deve ser feito com extrema cautela.
Para habilitar a identidade gerenciada primária no portal do Azure, siga estas etapas:
Acesse o SQL Server habilitado pelo recurso do Azure Arc no portal do Azure.
Em Configurações, selecione Microsoft Entra ID e Purview para abrir a 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 Microsoft Entra ID e Purview, marque a caixa ao lado da opção usar uma identidade gerenciada primária e, em seguida, use Salvar para aplicar sua configuração.
Conceder permissões de aplicação à identidade
Importante
Somente um Administrador de Funções Com Privilégios ou uma função superior pode conceder essas permissões.
A identidade gerenciada atribuída pelo sistema, que usa o nome do computador habilitado para Arc, deve ter as seguintes permissões de aplicativo do Microsoft Graph (funções de aplicativo):
User.Read.All: permite acesso às informações de usuário do Microsoft Entra.
GroupMember.Read.All: permite acesso às informações de grupo do Microsoft Entra.
Application.Read.ALL: permite o acesso às informações da entidade de serviço do Microsoft Entra (aplicativos).
Você pode usar o PowerShell para conceder permissões necessárias à identidade gerenciada. Como alternativa, você pode criar um grupo atribuível a função. Depois que o grupo for criado, atribua a função Leitores de Diretório ou a User.Read.All, GroupMember.Read.Alle Application.Read.All permissões ao grupo, e adicione todas as identidades gerenciadas atribuídas pelo sistema para seus computadores habilitados para Azure Arc ao grupo. Não recomendamos usar a função Leitores de Diretório em seu ambiente de produção.
O script do PowerShell a seguir concede as permissões necessárias à identidade gerenciada. Verifique se esse script é executado no PowerShell 7.5 ou em uma versão posterior e se o Microsoft.Graph módulo 2.28 ou posterior está 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 logons e usuários
Siga as etapas no tutorial do Microsoft Entra para criar logons e usuários para a identidade gerenciada.