Freigeben über


Einrichten der verwalteten Identität und der Microsoft Entra-Authentifizierung für SQL Server, aktiviert von Azure Arc

Gilt für: SQL Server 2025 (17.x)

Dieser Artikel enthält schrittweise Anleitungen zum Einrichten und Konfigurieren der verwalteten Identität von Microsoft Entra ID für SQL Server, die von Azure Arc aktiviert sind.

Eine Übersicht über die verwaltete Identität mit SQL Server finden Sie unter Verwaltete Identität für SQL Server, die von Azure Arc aktiviert ist.

Voraussetzungen

Bevor Sie eine verwaltete Identität mit SQL Server verwenden können, die von Azure Arc aktiviert ist, stellen Sie sicher, dass Sie die folgenden Voraussetzungen erfüllen:

Aktivieren der primären verwalteten Identität

Wenn Sie die Azure-Erweiterung für SQL Server auf Ihrem Server installiert haben, können Sie die primäre verwaltete Identität für Ihre SQL Server-Instanz direkt über das Azure-Portal aktivieren. Es ist auch möglich, die primäre verwaltete Identität manuell zu aktivieren, indem sie die Registrierung aktualisiert, sollte jedoch mit äußerster Vorsicht ausgeführt werden.

Führen Sie die folgenden Schritte aus, um die primäre verwaltete Identität im Azure-Portal zu aktivieren:

  1. Wechseln Sie im Azure-Portal zu Ihrem SQL Server, der von der Azure Arc-Ressource aktiviert ist .

  2. Wählen Sie unter "Einstellungen" die Microsoft Entra-ID und "Purview" aus, um die Microsoft Entra-ID und die Purview-Seite zu öffnen.

    Hinweis

    Wenn die Option " Microsoft Entra ID-Authentifizierung aktivieren" nicht angezeigt wird, stellen Sie sicher, dass Ihre SQL Server-Instanz mit Azure Arc verbunden ist und die neueste SQL-Erweiterung installiert ist.

  3. Aktivieren Sie auf der Seite "Microsoft Entra ID und Purview " das Kontrollkästchen neben " Primäre verwaltete Identität verwenden ", und verwenden Sie dann " Speichern ", um Ihre Konfiguration anzuwenden:

    Screenshot der Microsoft Entra-Option im Azure-Portal.

Berechtigung für die Identität gewähren

Von Bedeutung

Nur ein Privilegierter Rollenadministrator oder eine höhere Rolle kann diese Berechtigungen erteilen.

Die vom System zugewiesene verwaltete Identität, die den Arc-fähigen Computernamen verwendet, muss über die folgenden Microsoft Graph-Anwendungsberechtigungen (App-Rollen) verfügen:

  • User.Read.All: Ermöglicht den Zugriff auf Microsoft Entra-Benutzerinformationen.

  • GroupMember.Read.All: Ermöglicht den Zugriff auf Microsoft Entra-Gruppeninformationen.

  • Application.Read.ALL: Ermöglicht den Zugriff auf Microsoft Entra-Dienstprinzipalinformationen (Anwendungsinformationen).

Sie können PowerShell verwenden, um erforderliche Berechtigungen für die verwaltete Identität zu erteilen. Alternativ können Sie eine rollenzuweisungsfähige Gruppe erstellen. Nachdem die Gruppe erstellt wurde, weisen Sie der Gruppe die Rolle " Verzeichnisleser" oder " User.Read.All, GroupMember.Read.Allund Application.Read.All Berechtigungen" zu, und fügen Sie der Gruppe alle vom System zugewiesenen verwalteten Identitäten für Ihre Azure Arc-fähigen Computer hinzu. Es wird nicht empfohlen, die Rolle "Verzeichnisleser " in Ihrer Produktionsumgebung zu verwenden.

Das folgende PowerShell-Skript gewährt die erforderlichen Berechtigungen für die verwaltete Identität. Stellen Sie sicher, dass dieses Skript auf PowerShell 7.5 oder einer höheren Version ausgeführt wird und das Microsoft.Graph Modul 2.28 oder höher installiert ist.

# 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."
    }
}

Logins und Benutzer*innen erstellen

Führen Sie die Schritte im Microsoft Entra-Lernprogramm aus, um Anmeldeinformationen und Benutzer für die verwaltete Identität zu erstellen.