Udostępnij za pośrednictwem


Włączanie połączenia pulpitu zdalnego dla roli w usługach Azure Cloud Services (wersja klasyczna) przy użyciu programu Visual Studio

Ważne

Usługi Cloud Services (wersja klasyczna) są teraz przestarzałe dla wszystkich klientów od 1 września 2024 r. Wszystkie istniejące uruchomione wdrożenia zostaną zatrzymane i zamknięte przez firmę Microsoft, a dane zostaną przypadkowo utracone od października 2024 r. Nowe wdrożenia powinny używać nowego modelu wdrażania opartego na usłudze Azure Resource Manager w usługach Azure Cloud Services (wsparcie dodatkowe).

Pulpit zdalny umożliwia dostęp do pulpitu roli uruchomionej na platformie Azure przy użyciu protokołu RDP (Remote Desktop Protocol). Połączenie pulpitu zdalnego umożliwia rozwiązywanie i diagnozowanie problemów z aplikacją podczas jej uruchamiania.

Kreator publikowania, który program Visual Studio udostępnia dla usług w chmurze, zawiera opcję włączenia pulpitu zdalnego podczas procesu publikowania przy użyciu poświadczeń, które podajesz. Użycie tej opcji jest odpowiednie w przypadku korzystania z programu Visual Studio 2017 w wersji 15.4 lub starszej.

W programie Visual Studio 2017 w wersji 15.5 lub nowszej zalecamy unikanie włączania pulpitu zdalnego za pośrednictwem kreatora publikowania, chyba że pracujesz jako jeden deweloper. W każdej sytuacji, w której wielu deweloperów otworzy projekt, należy zamiast tego włączyć pulpit zdalny za pośrednictwem witryny Azure Portal, programu PowerShell lub potoku wydania w przepływie pracy ciągłego wdrażania. To zalecenie jest spowodowane zmianą sposobu komunikowania się programu Visual Studio z pulpitem zdalnym na maszynie wirtualnej usługi w chmurze, zgodnie z opisem w tym artykule.

Konfigurowanie pulpitu zdalnego za pomocą programu Visual Studio 2017 w wersji 15.4 lub starszej

W przypadku korzystania z programu Visual Studio 2017 w wersji 15.4 lub starszej można użyć opcji Włącz pulpit zdalny dla wszystkich ról w kreatorze publikowania. Nadal można używać kreatora z programem Visual Studio 2017 w wersji 15.5 lub nowszej, ale nie używaj opcji Pulpit zdalny.

  1. W programie Visual Studio uruchom kreatora publikowania, klikając prawym przyciskiem myszy projekt usługi w chmurze w Eksplorator rozwiązań i wybierając polecenie Publikuj.

  2. W razie potrzeby zaloguj się do subskrypcji platformy Azure i wybierz pozycję Dalej.

  3. Na stronie Ustawienia wybierz pozycję Włącz pulpit zdalny dla wszystkich ról, a następnie wybierz link Ustawienia..., aby otworzyć okno dialogowe Konfiguracja pulpitu zdalnego.

  4. W dolnej części okna dialogowego wybierz pozycję Więcej opcji. To polecenie wyświetla listę rozwijaną, w której tworzysz lub wybierasz certyfikat, aby można było szyfrować informacje o poświadczeniach podczas nawiązywania połączenia za pośrednictwem pulpitu zdalnego.

    Uwaga

    Certyfikaty potrzebne do nawiązania połączenia pulpitu zdalnego różnią się od certyfikatów używanych na potrzeby innych operacji platformy Azure. Certyfikat dostępu zdalnego musi mieć klucz prywatny.

  5. Wybierz certyfikat z listy lub wybierz pozycję Utwórz...>.< W przypadku tworzenia nowego certyfikatu podaj przyjazną nazwę nowego certyfikatu po wyświetleniu monitu i wybierz przycisk OK. Nowy certyfikat zostanie wyświetlony w polu listy rozwijanej.

  6. Podaj nazwę użytkownika i hasło. Nie można użyć istniejącego konta. Nie używaj nazwy "Administrator" jako nazwy użytkownika dla nowego konta.

  7. Wybierz datę wygaśnięcia konta. Wygasłe konto automatycznie blokuje dalsze połączenia pulpitu zdalnego.

  8. Po podaniu wszystkich wymaganych informacji wybierz przycisk OK. Program Visual Studio dodaje ustawienia pulpitu zdalnego do plików i .csdef projektu.cscfg, w tym hasło zaszyfrowane przy użyciu wybranego certyfikatu.

  9. Wykonaj pozostałe kroki przy użyciu przycisku Dalej , a następnie wybierz pozycję Publikuj , gdy wszystko będzie gotowe do opublikowania usługi w chmurze. Jeśli nie jesteś gotowy do opublikowania, wybierz pozycję Anuluj i odpowiedz tak po wyświetleniu monitu o zapisanie zmian. Możesz opublikować usługę w chmurze później przy użyciu tych ustawień.

Konfigurowanie pulpitu zdalnego podczas korzystania z programu Visual Studio 2017 w wersji 15.5 lub nowszej

W programie Visual Studio 2017 w wersji 15.5 lub nowszej można nadal używać kreatora publikowania z projektem usługi w chmurze. Możesz również użyć opcji Włącz pulpit zdalny dla wszystkich ról , jeśli pracujesz tylko jako jeden deweloper.

Jeśli pracujesz jako część zespołu, należy zamiast tego włączyć pulpit zdalny w usłudze w chmurze platformy Azure przy użyciu witryny Azure Portal lub programu PowerShell.

To zalecenie jest spowodowane zmianą sposobu komunikowania się programu Visual Studio 2017 w wersji 15.5 lub nowszej z maszyną wirtualną usługi w chmurze. Po włączeniu pulpitu zdalnego za pośrednictwem kreatora publikowania wcześniejsze wersje programu Visual Studio komunikują się z maszyną wirtualną za pośrednictwem "wtyczki RDP". Program Visual Studio 2017 w wersji 15.5 lub nowszej komunikuje się zamiast tego przy użyciu "rozszerzenia RDP", które jest bezpieczniejsze i bardziej elastyczne. Ta zmiana jest również zgodna z faktem, że witryna Azure Portal i metody programu PowerShell w celu włączenia pulpitu zdalnego również używają rozszerzenia RDP.

Gdy program Visual Studio komunikuje się z rozszerzeniem RDP, przesyła zwykłe hasło tekstowe za pośrednictwem protokołu Transport Layer Security (TLS). Jednak pliki konfiguracji projektu przechowują tylko zaszyfrowane hasło, które można odszyfrować do zwykłego tekstu tylko przy użyciu certyfikatu lokalnego, który został pierwotnie użyty do jego zaszyfrowania.

Jeśli za każdym razem wdrożysz projekt usługi w chmurze z tego samego komputera programistycznego, ten certyfikat lokalny jest dostępny. W takim przypadku nadal można użyć opcji Włącz pulpit zdalny dla wszystkich ról w kreatorze publikowania.

Jeśli jednak Ty lub inni deweloperzy chcą wdrożyć projekt usługi w chmurze z różnych komputerów, inne komputery nie mają certyfikatu niezbędnego do odszyfrowania hasła. W rezultacie zostanie wyświetlony następujący komunikat o błędzie:

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

Możesz zmienić hasło za każdym razem, gdy wdrażasz usługę w chmurze, ale ta akcja staje się niewygodna dla wszystkich, którzy muszą korzystać z pulpitu zdalnego.

Jeśli udostępniasz projekt zespołowi, najlepiej wyczyścić opcję w kreatorze publikowania, a zamiast tego włączyć pulpit zdalny bezpośrednio za pośrednictwem witryny Azure Portal lub przy użyciu programu PowerShell.

Wdrażanie z serwera kompilacji przy użyciu programu Visual Studio 2017 w wersji 15.5 lub nowszej

Projekt usługi w chmurze można wdrożyć z serwera kompilacji (na przykład z usługą Azure DevOps Services), na którym program Visual Studio 2017 w wersji 15.5 lub nowszej jest zainstalowany w agencie kompilacji. W tym układzie wdrożenie odbywa się z tego samego komputera, na którym jest dostępny certyfikat szyfrowania.

Aby użyć rozszerzenia RDP z usług Azure DevOps Services, dołącz następujące szczegóły w potoku kompilacji:

  1. Uwzględnij /p:ForceRDPExtensionOverPlugin=true argumenty programu MSBuild, aby upewnić się, że wdrożenie działa z rozszerzeniem RDP, a nie z wtyczką RDP. Na przykład:

    msbuild AzureCloudService5.ccproj /t:Publish /p:TargetProfile=Cloud /p:DebugType=None
        /p:SkipInvalidConfigurations=true /p:ForceRDPExtensionOverPlugin=true
    
  2. Po wykonaniu kroków kompilacji dodaj krok Wdrażania usługi w chmurze platformy Azure i ustaw jego właściwości.

  3. Po kroku wdrażania dodaj krok programu Azure PowerShell , ustaw jej właściwość Nazwa wyświetlana na "Wdrożenie platformy Azure: Włączanie rozszerzenia RDP" (lub inną odpowiednią nazwę) i wybierz odpowiednią subskrypcję platformy Azure.

  4. Ustaw wartość Typ skryptu na wartość "Śródliniowa" i wklej poniższe polecenie w polu Skrypt wbudowany. (Możesz również utworzyć .ps1 plik w projekcie za pomocą tego skryptu, ustawić wartość Typ skryptu na "Ścieżka pliku skryptu" i ustawić ścieżkę skryptu, aby wskazać plik).

    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
    

Nawiązywanie połączenia z rolą platformy Azure przy użyciu pulpitu zdalnego

Po opublikowaniu usługi w chmurze na platformie Azure i włączeniu pulpitu zdalnego możesz zalogować się do maszyny wirtualnej usługi w chmurze przy użyciu Eksploratora serwera programu Visual Studio:

  1. W Eksploratorze serwera rozwiń węzeł platformy Azure , a następnie rozwiń węzeł dla usługi w chmurze i jedną z jego ról, aby wyświetlić listę wystąpień.

  2. Kliknij prawym przyciskiem myszy węzeł wystąpienia i wybierz polecenie Połącz przy użyciu pulpitu zdalnego.

  3. Wprowadź nazwę użytkownika i hasło utworzone wcześniej. Teraz logujesz się do sesji zdalnej.

Następne kroki