共用方式為


緊急 VM 存取 (EVA)

緊急 VM 存取服務 (EVA) 可讓使用者在該使用者從虛擬機鎖定的情況下,向操作員要求協助,而重新部署作業則無助於透過網路復原存取權。

注意

EVA 從 Azure Stack Hub 2301 開始正式推出。

此功能必須針對每個訂用帳戶啟用,且操作員必須啟用遠端桌面存取,才能讓 cloudadmin 使用者存取緊急復原控制台 VM (ERCS)。

使用者的第一個步驟是透過PowerShell要求 VM 控制台存取權。 要求會提供同意,並允許操作員透過其控制台連線到虛擬機的其他資訊。 控制台存取不取決於網路連線能力,並使用 Hypervisor 的數據通道。

如果已知認證,操作員只能向 VM 內執行的作業系統進行驗證。 此時,操作員也可以與用戶共享畫面,並一起解決問題,以還原網路連線。

重要

對於執行 Windows Server 的 VM,EVA 功能僅限於使用圖形使用者介面 (GUI) 執行的電腦。 針對 Windows Server,核心作業系統不支援螢幕小鍵盤功能。 由於您無法將 Ctrl+Alt+Del 按鍵組合當做輸入傳送,所以即使您可以連線到其控制台,也無法登入核心伺服器。 如果您需要解決 Windows 核心作業系統的問題,請與Microsoft支援人員互動,以從解除鎖定的 PEP 提供控制台存取權。

操作員為 EVA 啟用使用者訂用帳戶

在此案例中,操作員可以決定哪個訂用帳戶應該能夠使用緊急 VM 存取功能。

首先,執行下列 PowerShell 腳本。 若要執行此腳本,您必須安裝 Azure Stack Hub PowerShell。 請遵循如何安裝 Azure Stack Hub PowerShell 的指引。 以正確的值取代變數佔位元元:

# 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

使用者要求 VM 控制台存取

身為使用者,您會同意操作員建立特定 VM 的控制台存取權。

  1. 以使用者身分開啟 PowerShell、登入您的訂用帳戶,並 聯機到 Azure Stack Hub,如這裡所述。

  2. 執行下列指令碼。 您必須取代訂用帳戶標識碼、資源群組和 VM 名稱,才能建構 VMResourceID

    $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. 腳本會傳回租使用者提供給操作員的緊急復原控制台名稱 (ERCS),以及 VMResourceID

操作員可讓遠端桌面存取 ERCS VM

Azure Stack Hub 操作員的下一個步驟是讓遠端桌面存取裝載具特殊許可權端點的緊急復原控制台 VM (ERCS)。

從您用來連線到 ERCS 的操作員工作站,在特殊許可權端點 (PEP) 中執行下列命令。 命令會將工作站的IP新增至網路安全清單。 請遵循如何 連線到 PEP 的指引。 操作員可以是 cloudadmin 使用者群組的成員,或 cloudadmin 本身:

Grant-RdpAccessToErcsVM

若要停用緊急復原控制台 VM (ERCS) 的遠端桌面存取,請在特殊許可權端點中執行下列命令(PEP):

Revoke-RdpAccessToErcsVM

注意

任何一個 ERCS VM 都會被指派給租用戶使用者的存取要求。 身為操作員,您只能對從租使用者接收的 ERCS VM 建立 PEP 會話(輸出的 $enableVMAccessResponse)。

  1. 操作員會使用 ERCS 名稱,並使用遠端桌面用戶端連線到該名稱(RDP):例如,從操作員存取工作站 (OAW) 。

    注意

    操作員會使用執行 Grant-RdpAccessToErcsVM 的相同雲端系統管理員帳戶進行驗證。

  2. 透過 RDP 連線到 ERCS VM 之後,請啟動 PowerShell。

  3. 使用下列命令連線到租用戶虛擬機的主控台:

    ConnectTo-TenantVm -ResourceID
    
  4. 操作員現在會連線到租用戶虛擬機的控制台畫面,他們需要再次使用 cloudadmin 認證進行驗證。 操作員沒有任何用來登入客體操作系統的認證。

    注意

    在登入畫面中,按 Windows + U 鍵會啟動螢幕上的鍵盤,允許傳送 CTRL + ALT + Delete。 您必須處於全螢幕 RDP 模式,才能使用 Windows + U 按鍵組合。

  5. 操作員現在可以與租用戶進行屏幕共用,以偵錯任何無法透過網路連線到 VM 的問題。

  6. 完成時,操作員可以執行下列命令來移除使用者同意:

    Delete-TenantVMSession -ResourceID
    

    注意

    使用者同意會在 8 小時後自動到期,並將撤銷操作員的所有存取權。