Freigeben über


Notfallzugriff auf virtuelle Computer (EVA)

Der Emergency VM Access Service (EVA) ermöglicht es einem Benutzer, Hilfe vom Operator in Szenarien anzufordern, in denen dieser Benutzer vom virtuellen Computer gesperrt ist, und der erneute Bereitstellungsvorgang hilft nicht, den Zugriff über das Netzwerk wiederherzustellen.

Hinweis

EVA wurde mit der allgemeinen Verfügbarkeit ab Azure Stack Hub 2301 veröffentlicht.

Dieses Feature muss pro Abonnement aktiviert sein, und der Betreiber muss den Remotedesktopzugriff aktivieren, damit der Cloudadmin-Benutzer auf die VMs der Notfallwiederherstellungskonsole (ERCS) zugreifen kann.

Der erste Schritt für den Benutzer besteht darin, den Zugriff auf die VM-Konsole über PowerShell anzufordern. Die Anforderung dient der Einwilligung und ermöglicht es dem Operator mit zusätzlichen Informationen, eine Verbindung über seine Konsole mit dem virtuellen Computer herzustellen. Der Konsolenzugriff hängt nicht von der Netzwerkkonnektivität ab und verwendet einen Datenkanal des Hypervisors.

Der Operator kann sich nur beim Betriebssystem authentifizieren, das innerhalb der VM ausgeführt wird, wenn die Anmeldeinformationen bekannt sind. Zu diesem Zeitpunkt kann der Operator auch die Bildschirme für den Benutzer freigeben und das Problem gemeinsam lösen, um die Netzwerkkonnektivität wiederherzustellen.

Wichtig

Bei virtuellen Computern unter Windows Server ist das EVA-Feature auf Computer beschränkt, die mit einer grafischen Benutzeroberfläche (GUI) ausgeführt werden. Für Windows Server unterstützt das Kernbetriebssystem keine Bildschirmtastaturfunktionen. Da Sie die Tastenkombination STRG+ALT+ENTF nicht als Eingabe senden können, können Sie sich nicht bei einem Kernserver anmelden, obwohl Sie eine Verbindung mit dessen Konsole herstellen können. Wenn Sie ein Problem mit dem Windows-Kernbetriebssystem beheben müssen, wenden Sie sich bitte an den Microsoft-Support, um Konsolenzugriff von einem entsperrten PEP bereitzustellen.

Operator aktiviert ein Benutzerabonnement für EVA

In diesem Szenario kann der Operator entscheiden, welches Abonnement in der Lage sein soll, das Feature für den Notfallzugriff auf virtuelle Computer zu verwenden.

Führen Sie zunächst das folgende PowerShell-Skript aus. Zur Ausführung dieses Skripts müssen Sie Azure Stack Hub PowerShell installiert haben. Befolgen Sie die Anleitung zum Installieren von Azure Stack Hub PowerShell. Ersetzen Sie die Variablenplatzhalter durch die richtigen Werte:

# Replace strings with your values before running the script
$FQDN = "External FQDN"
$RegionName = "Azure Stack Region Name"
# The value for "TenantID" should always be the tenant ID of home directory as it's only used for connecting to the admin resource manager endpoint.
$TenantID = "TenantID"
$TenantSubscriptionId = "Tenant Subscription ID"

$tenantSubscriptionSettings = @{
    TenantSubscriptionId = [string]$tenantSubscriptionId
}

# Add environment & authenticate
Add-AzureRmEnvironment -Name AzureStackAdmin -ARMEndpoint https://adminmanagement.$RegionName.$FQDN
Login-AzureRmAccount -Environment AzureStackAdmin -TenantId $TenantID

Invoke-AzureRmResourceAction `
    -ResourceName "$($RegionName)/Microsoft.Compute.EmergencyVMAccess" `
    -ResourceType "Microsoft.Compute.Admin/locations/features" `
    -Action "enableTenantSubscriptionFeature" `
    -Parameters $tenantSubscriptionSettings `
    -ApiVersion "2020-11-01" `
    -ErrorAction Stop `
    -Force

Anfordern des Zugriffs auf die VM-Konsole durch Benutzer

Als Benutzer stellen Sie dem Operator die Einwilligung bereit, den Konsolenzugriff für einen bestimmte virtuellen Computer zu erstellen.

  1. Öffnen Sie PowerShell als Benutzer, melden Sie sich bei Ihrem Abonnement an, und stellen Sie wie hier beschrieben eine Verbindung mit Azure Stack Hub her.

  2. Führen Sie das folgende Skript aus. Sie müssen die Abonnement-ID, die Ressourcengruppe und den VM-Namen ersetzen, um die VMResourceID zu erstellen:

    $SubscriptionID = "your Azure subscription ID" 
    $ResourceGroup = "your resource group name" 
    $VMName = "your VM name" 
    $vmResourceId = "/subscriptions/$SubscriptionID/resourceGroups/$ResourceGroup/providers/Microsoft.Compute/virtualMachines/$VMName" 
    
    $enableVMAccessResponse = Invoke-AzureRMResourceAction `
        -ResourceId $vmResourceId `
        -Action "enableVmAccess" `
        -ApiVersion "2020-06-01" `
        -ErrorAction Stop `
        -Force
    
    Write-Host "Please provide the following output to operator`n" -ForegroundColor Yellow
    Write-Host "ERCS Name:`t$(($enableVMAccessResponse).ERCSName)" -ForegroundColor Cyan
    Write-Host "ConnectTo-TenantVm -ResourceID $($vmResourceId)" -ForegroundColor Green
    Write-Host "Delete-TenantVMSession -ResourceID $($vmResourceId)" -ForegroundColor Green
    

  1. Das Skript gibt den Namen der Notfallwiederherstellungskonsole (ERCS) zurück, den der Mandant dem Operator zusammen mit der VMResourceID bereitstellt.

Operator ermöglicht Remotedesktopzugriff auf ERCS-VMs

Der nächste Schritt für den Azure Stack Hub-Operator besteht darin, den Remotedesktopzugriff auf die virtuellen Computer der Notfallwiederherstellungskonsole (ERCS) zu aktivieren, die die privilegierten Endpunkte hosten.

Führen Sie die folgenden Befehle im privilegierten Endpunkt (PEP) von der Operatorarbeitsstation aus, die Sie zum Herstellen einer Verbindung mit dem ERCS verwenden. Der Befehl fügt die IP-Adresse der Arbeitsstation zur Netzwerk-Safelist hinzu. Befolgen Sie die Anleitung zum Herstellen einer Verbindung mit PEP. Der Operator kann Mitglied der cloudadmin-Benutzergruppe oder der cloudadmin-Benutzer selbst sein:

Grant-RdpAccessToErcsVM

Um den Remotedesktopzugriff auf die virtuellen Computer der Notfallwiederherstellungskonsole (ERCS) zu deaktivieren, führen Sie den folgenden Befehl auf dem privilegierten Endpunkt (PEP) aus:

Revoke-RdpAccessToErcsVM

Hinweis

Jedem virtuellen ERCS-Computer wird die Zugriffsanforderung des Mandantenbenutzers zugewiesen. Als Operator können Sie eine PEP-Sitzung nur mit der ERCS-VM erstellen, die vom Mandanten empfangen wird (die Ausgabe von $enableVMAccessResponse).

  1. Der Operator verwendet den ERCS-Namen und stellt mithilfe des Remotedesktopclients (RDP) eine Verbindung mit ihm her, z. B. von der Arbeitsstation mit Operatorzugriff (OAW) aus.

    Hinweis

    Der Operator authentifiziert sich mithilfe desselben Cloudadministratorkontos, das Grant-RdpAccessToErcsVM ausgeführt hat.

  2. Nachdem Sie über RDP eine Verbindung mit dem virtuellen Computer der Notfallwiederherstellungskonsole (ERCS) hergestellt haben, starten Sie PowerShell.

  3. Stellen Sie mithilfe des folgenden Befehls eine Verbindung mit der Konsole des virtuellen Computers des Mandanten her:

    ConnectTo-TenantVm -ResourceID
    
  4. Der Operator stellt jetzt eine Verbindung mit der Konsole des virtuellen Computers des Mandanten her, bei dem er sich mithilfe der cloudadmin-Anmeldeinformationen erneut authentifizieren muss. Der Operator verfügt nicht über Anmeldeinformationen, mit denen sie sich beim Gastbetriebssystem anmelden können.

    Hinweis

    Wenn Sie auf dem Anmeldebildschirm die Tastenkombination WINDOWS+U drücken, wird die Bildschirmtastatur gestartet. Dadurch wird das Senden von STRG+ALT+ENTF ermöglicht. Der RDP-Vollbildmodus muss aktiviert sein, damit Sie die Tastenkombination WINDOWS+U verwenden können.

  5. Der Operator kann jetzt den Bildschirm für den Mandanten freigeben, um Probleme zu debuggen, die eine Verbindung mit dem virtuellen Computer über das Netzwerk verhindern.

  6. Anschließend kann der Operator den folgenden Befehl ausführen, um die Benutzereinwilligung zu entfernen:

    Delete-TenantVMSession -ResourceID
    

    Hinweis

    Die Benutzereinwilligung läuft automatisch nach acht Stunden ab und widerruft jeglichen Zugriff des Operators.