Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro: SQL Server 2025 (17.x)
Tento článek obsahuje podrobné pokyny pro nastavení a konfiguraci spravované identity Microsoft Entra ID pro SQL Server, který povoluje Azure Arc.
Přehled spravované identity s SQL Serverem najdete v tématu Spravovaná identita pro SQL Server s podporou Azure Arc.
Požadavky
Než budete moct používat spravovanou identitu s SQL Serverem povolenou službou Azure Arc, ujistěte se, že splňujete následující požadavky:
- Podporováno pro SQL Server 2025 a novější, běží ve Windows.
- Připojte SQL Server k Azure Arc.
- Nejnovější verze rozšíření Azure pro SQL Server
Povolte primární spravovanou identitu
Pokud jste na server nainstalovali rozšíření Azure pro SQL Server, můžete pro instanci SQL Serveru povolit primární spravovanou identitu přímo z webu Azure Portal. Primární spravovanou identitu je také možné povolit ručně aktualizací registru, ale měla by být provedena s extrémní opatrností.
Pokud chcete na webu Azure Portal povolit primární spravovanou identitu, postupujte takto:
V Portálu Azure přejděte na SQL Server povolený pomocí Azure Arc.
V části Nastavení vyberte Microsoft Entra ID a Purview a otevřete stránku Microsoft Entra ID a Purview .
Poznámka:
Pokud možnost Povolit ověřování Pomocí ID Microsoft Entra nevidíte, ujistěte se, že je vaše instance SQL Serveru připojená ke službě Azure Arc a že máte nainstalované nejnovější rozšíření SQL.
Na stránce Microsoft Entra ID a Purview zaškrtněte políčko vedle možnosti Použít primární spravovanou identitu a pak pomocí příkazu Uložit použijte konfiguraci:
Udělení oprávnění aplikace pro identitu
Důležité
Tato oprávnění může udělit pouze správce privilegovaných rolí nebo vyšší role.
Spravovaná identita přiřazená systémem, která používá název počítače s podporou Arc, musí mít následující oprávnění aplikace Microsoft Graphu (role aplikací):
User.Read.All: Umožňuje přístup k informacím o uživateli Microsoft Entra.
GroupMember.Read.All: Umožňuje přístup k informacím o skupině Microsoft Entra.
Application.Read.ALL: Umožňuje přístup k informacím instančního objektu Microsoft Entra (aplikace).
K udělení požadovaných oprávnění spravované identitě můžete použít PowerShell. Alternativně můžete vytvořit skupinu s možností přiřazení role. Po vytvoření skupiny přiřaďte ke skupině roli Čtenáři adresáře nebo oprávnění User.Read.All, GroupMember.Read.All, a Application.Read.All, a přidejte do skupiny všechny spravované identity přiřazené systémem pro vaše počítače s podporou Azure Arc. V produkčním prostředí nedoporučujeme používat roli Čtenáře adresáře .
Následující skript PowerShellu udělí požadovaná oprávnění spravované identitě. Ujistěte se, že je tento skript spuštěný v PowerShellu 7.5 nebo novější verzi a má Microsoft.Graph nainstalovaný modul 2.28 nebo novější.
# 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."
}
}
Vytváření přihlášení a uživatelů
Postupujte podle kroků v kurzu Microsoft Entra a vytvořte přihlášení a uživatele pro spravovanou identitu.