Sdílet prostřednictvím


Povolení připojení ke vzdálené ploše pro roli v Azure Cloud Services (classic) pomocí sady Visual Studio

Důležité

Služba Cloud Services (Classic) je teď pro nové zákazníky zastaralá a bude vyřazena 31. srpna 2024 pro všechny zákazníky. Nová nasazení by měla používat nový model nasazení založený na Azure Resource Manageru na Azure Cloud Services (rozšířená podpora).

Vzdálená plocha umožňuje přístup k ploše role spuštěné v Azure pomocí protokolu RDP (Remote Desktop Protocol). Připojení ke vzdálené ploše můžete použít k řešení a diagnostice problémů s vaší aplikací při jejím spuštění.

Průvodce publikováním, který sada Visual Studio poskytuje pro cloudové služby, obsahuje možnost povolit vzdálenou plochu během procesu publikování pomocí přihlašovacích údajů, které zadáte. Tato možnost je vhodná při použití sady Visual Studio 2017 verze 15.4 a starší.

V sadě Visual Studio 2017 verze 15.5 a novější doporučujeme nepoužívat vzdálenou plochu prostřednictvím průvodce publikováním, pokud nepracujete jako jeden vývojář. V případě jakékoli situace, kdy projekt otevřelo více vývojářů, byste měli povolit vzdálenou plochu prostřednictvím webu Azure Portal, přes PowerShell nebo z kanálu verze v pracovním postupu průběžného nasazování. Toto doporučení je způsobeno změnou způsobu komunikace sady Visual Studio se vzdálenou plochou na virtuálním počítači cloudové služby, jak je vysvětleno v tomto článku.

Konfigurace vzdálené plochy prostřednictvím sady Visual Studio 2017 verze 15.4 a starší

Při použití sady Visual Studio 2017 verze 15.4 a starší můžete v průvodci publikováním použít možnost Povolit vzdálenou plochu pro všechny role . Průvodce můžete dál používat se sadou Visual Studio 2017 verze 15.5 a novějšími verzemi, ale nepoužívejte možnost Vzdálená plocha.

  1. V sadě Visual Studio spusťte průvodce publikováním tak, že v Průzkumník řešení kliknete pravým tlačítkem na projekt cloudové služby a zvolíte Publikovat.

  2. V případě potřeby se přihlaste ke svému předplatnému Azure a vyberte Další.

  3. Na stránce Nastavení vyberte Povolit vzdálenou plochu pro všechny role a pak vyberte odkaz Nastavení... a otevřete dialogové okno Konfigurace vzdálené plochy.

  4. V dolní části dialogového okna vyberte Další možnosti. Tento příkaz zobrazí rozevírací seznam, ve kterém vytvoříte nebo zvolíte certifikát, abyste při připojování přes vzdálenou plochu mohli šifrovat informace o přihlašovacích údajích.

    Poznámka:

    Certifikáty, které potřebujete pro připojení ke vzdálené ploše, se liší od certifikátů, které používáte pro jiné operace Azure. Certifikát vzdáleného přístupu musí mít privátní klíč.

  5. Vyberte certifikát ze seznamu nebo zvolte Vytvořit...>.< Pokud vytváříte nový certifikát, zadejte popisný název nového certifikátu po zobrazení výzvy a vyberte OK. Nový certifikát se zobrazí v rozevíracím seznamu.

  6. Zadejte uživatelské jméno a heslo. Nemůžete použít existující účet. Nepoužívejte jako uživatelské jméno nového účtu "Administrator".

  7. Zvolte datum, kdy platnost účtu vyprší. Účet, jehož platnost vypršela, automaticky blokuje další připojení ke vzdálené ploše.

  8. Po zadání všech požadovaných informací vyberte OK. Visual Studio přidá nastavení vzdálené plochy do souborů a .csdef souborů projektu.cscfg, včetně hesla, které je šifrované pomocí zvoleného certifikátu.

  9. Pomocí tlačítka Další proveďte všechny zbývající kroky a až budete připravení publikovat cloudovou službu, vyberte Publikovat. Pokud nejste připravení publikovat, vyberte po zobrazení výzvy k uložení změn tlačítko Storno a odpovězte na ano . Cloudovou službu můžete publikovat později s těmito nastaveními.

Konfigurace vzdálené plochy při použití sady Visual Studio 2017 verze 15.5 a novější

V sadě Visual Studio 2017 verze 15.5 a novější můžete průvodce publikováním použít s projektem cloudové služby. Pokud pracujete jenom jako jeden vývojář, můžete také použít možnost Povolit vzdálenou plochu pro všechny role .

Pokud pracujete jako součást týmu, měli byste místo toho povolit vzdálenou plochu v cloudové službě Azure pomocí webu Azure Portal nebo PowerShellu.

Toto doporučení je způsobeno změnou způsobu komunikace sady Visual Studio 2017 verze 15.5 a novější s virtuálním počítačem cloudové služby. Když povolíte vzdálenou plochu prostřednictvím průvodce publikováním, starší verze sady Visual Studio komunikují s virtuálním počítačem prostřednictvím modulu plug-in RDP. Visual Studio 2017 verze 15.5 a novější komunikuje místo toho pomocí rozšíření RDP, které je bezpečnější a flexibilnější. Tato změna je také v souladu se skutečností, že azure portal a metody PowerShellu pro povolení vzdálené plochy také používají rozšíření RDP.

Když Visual Studio komunikuje s rozšířením RDP, přenáší heslo ve formátu prostého textu přes protokol TLS (Transport Layer Security). Konfigurační soubory projektu ale ukládají jenom šifrované heslo, které lze dešifrovat pouze do prostého textu s místním certifikátem, který byl původně použit k zašifrování.

Pokud pokaždé nasadíte projekt cloudové služby ze stejného vývojového počítače, bude tento místní certifikát k dispozici. V takovém případě můžete v průvodci publikováním použít možnost Povolit vzdálenou plochu pro všechny role .

Pokud ale vy nebo jiní vývojáři chcete nasadit projekt cloudové služby z různých počítačů, tyto ostatní počítače nemají potřebný certifikát k dešifrování hesla. V důsledku toho se zobrazí následující chybová zpráva:

Applying remote desktop protocol extension.
Certificate with thumbprint [thumbprint] doesn't exist.

Heslo můžete změnit pokaždé, když nasadíte cloudovou službu, ale tato akce bude pro všechny uživatele, kteří potřebují vzdálenou plochu používat, nepříjemně.

Pokud projekt sdílíte s týmem, je nejlepší zrušit výběr možnosti v průvodci publikováním a místo toho povolit vzdálenou plochu přímo prostřednictvím webu Azure Portal nebo pomocí PowerShellu.

Nasazení ze buildového serveru pomocí sady Visual Studio 2017 verze 15.5 a novější

Projekt cloudové služby můžete nasadit z buildového serveru (například pomocí Azure DevOps Services), na kterém je v agentu sestavení nainstalovaná sada Visual Studio 2017 verze 15.5 nebo novější. S tímto uspořádáním se nasazení provádí ze stejného počítače, na kterém je k dispozici šifrovací certifikát.

Pokud chcete použít rozšíření RDP ze služby Azure DevOps Services, uveďte do kanálu buildu následující podrobnosti:

  1. Zahrňte /p:ForceRDPExtensionOverPlugin=true do argumentů MSBuild, abyste měli jistotu, že nasazení funguje s rozšířením RDP, a ne s modulem plug-in RDP. Příklad:

    msbuild AzureCloudService5.ccproj /t:Publish /p:TargetProfile=Cloud /p:DebugType=None
        /p:SkipInvalidConfigurations=true /p:ForceRDPExtensionOverPlugin=true
    
  2. Po krocích sestavení přidejte krok nasazení cloudové služby Azure a nastavte jeho vlastnosti.

  3. Po kroku nasazení přidejte krok Azure PowerShellu , nastavte jeho vlastnost Zobrazovaný název na Azure Deployment: Enable RDP Extension (nebo jiný vhodný název) a vyberte příslušné předplatné Azure.

  4. Nastavte typ skriptu na Vložený a vložte následující text do pole Vložený skript . (Pomocí tohoto skriptu můžete také vytvořit .ps1 soubor v projektu, nastavit typ skriptu na "Cesta k souboru skriptu" a nastavit cestu skriptu tak, aby odkazovat na soubor.)

    Param(
        [Parameter(Mandatory=$True)]
        [string]$username,
    
        [Parameter(Mandatory=$True)]
        [string]$password,
    
        [Parameter(Mandatory=$True)]
        [string]$serviceName,
    
        [Datetime]$expiry = ($(Get-Date).AddYears(1))
    )
    
    Write-Host "Service Name: $serviceName"
    Write-Host "User Name: $username"
    Write-Host "Expiry: $expiry"
    
    $securepassword = ConvertTo-SecureString -String $password -AsPlainText -Force
    $credential = New-Object System.Management.Automation.PSCredential $username,$securepassword
    
    # Try to remote existing RDP Extensions
    try
    {
        $existingRDPExtension = Get-AzureServiceRemoteDesktopExtension -ServiceName $servicename
        if ($existingRDPExtension -ne $null)
        {
            Remove-AzureServiceRemoteDesktopExtension -ServiceName $servicename -UninstallConfiguration
        }
    }
    catch
    {
    }
    
    Set-AzureServiceRemoteDesktopExtension -ServiceName $servicename -Credential $credential -Expiration $expiry -Verbose
    

Připojení k roli Azure pomocí vzdálené plochy

Po publikování cloudové služby v Azure a povolení vzdálené plochy můžete pomocí Průzkumníka serveru sady Visual Studio přihlásit k virtuálnímu počítači cloudové služby:

  1. V Průzkumníku serveru rozbalte uzel Azure a pak rozbalte uzel cloudové služby a jednu z jejích rolí, aby se zobrazil seznam instancí.

  2. Klikněte pravým tlačítkem myši na uzel instance a vyberte Připojit pomocí vzdálené plochy.

  3. Zadejte uživatelské jméno a heslo, které jste vytvořili dříve. Teď jste přihlášení ke vzdálené relaci.

Další kroky