Aracılığıyla paylaş


Visual Studio kullanarak Azure Cloud Services'da (klasik) rol için Uzak Masaüstü Bağlantısını etkinleştirme

Önemli

Cloud Services (klasik) artık yeni müşteriler için kullanımdan kaldırılmıştır ve tüm müşteriler için 31 Ağustos 2024'te kullanımdan kaldırılacaktır. Yeni dağıtımlarda yeni Azure Resource Manager tabanlı dağıtım modeli Azure Cloud Services (genişletilmiş destek) kullanılmalıdır.

Uzak Masaüstü, Azure'da çalışan bir rolün masaüstüne erişmenizi sağlar. Uygulama çalışırken uygulamanızla ilgili sorunları gidermek ve tanılamak için Uzak Masaüstü bağlantısı kullanabilirsiniz.

Visual Studio'da bulut hizmetleri için sunulan yayımlama sihirbazı, sağladığınız kimlik bilgilerini kullanarak yayımlama işlemi sırasında Uzak Masaüstü'nü etkinleştirme seçeneği içerir. Visual Studio 2017 sürüm 15.4 ve önceki sürümleri kullanırken bu seçeneği kullanmak uygundur.

Ancak Visual Studio 2017 sürüm 15.5 ve üzeriyle, yalnızca tek bir geliştirici olarak çalışmadığınız sürece yayımlama sihirbazı aracılığıyla Uzak Masaüstü'nü etkinleştirmekten kaçınmanız önerilir. Projenin diğer geliştiriciler tarafından açılabilmesi durumunda, bunun yerine Uzak Masaüstü'nü Azure portal, PowerShell aracılığıyla veya sürekli dağıtım iş akışındaki bir yayın işlem hattından etkinleştirirsiniz. Bu öneri, bu makalede açıklandığı gibi Visual Studio'nun bulut hizmeti VM'sinde Uzak Masaüstü ile iletişim kurma biçimindeki bir değişikliktir.

Visual Studio 2017 sürüm 15.4 ve öncesi aracılığıyla Uzak Masaüstü'nü yapılandırma

Visual Studio 2017 sürüm 15.4 ve önceki sürümleri kullanırken, yayımlama sihirbazındaki Tüm roller için Uzak Masaüstünü Etkinleştir seçeneğini kullanabilirsiniz. Sihirbazı Visual Studio 2017 sürüm 15.5 ve üzeri ile kullanmaya devam edebilirsiniz, ancak Uzak Masaüstü seçeneğini kullanmayın.

  1. Visual Studio'da, Çözüm Gezgini'da bulut hizmeti projenize sağ tıklayıp Yayımla'yı seçerek yayımlama sihirbazını başlatın.

  2. Gerekirse Azure aboneliğinizde oturum açın ve İleri'yi seçin.

  3. Ayarlar sayfasında, Uzak Masaüstü'nü tüm roller için etkinleştir'i seçin ve ardından Uzak Masaüstü Yapılandırması iletişim kutusunu açmak için Ayarlar... bağlantısını seçin.

  4. İletişim kutusunun en altında Diğer Seçenekler'i seçin. Bu komut, uzak masaüstü aracılığıyla bağlanırken kimlik bilgileri bilgilerini şifreleyebilmeniz için bir sertifika oluşturduğunuz veya seçtiğiniz açılan listeyi görüntüler.

    Not

    Uzak masaüstü bağlantısı için ihtiyacınız olan sertifikalar, diğer Azure işlemleri için kullandığınız sertifikalardan farklıdır. Uzaktan erişim sertifikasının özel anahtarı olmalıdır.

  5. Listeden bir sertifika seçin veya Oluştur...> öğesini seçin<. Yeni bir sertifika oluşturuyorsanız, istendiğinde yeni sertifika için kolay bir ad sağlayın ve Tamam'ı seçin. Yeni sertifika, açılan liste kutusunda görünür.

  6. Bir kullanıcı adı ve parola girin. Mevcut bir hesabı kullanamazsınız. Yeni hesap için kullanıcı adı olarak "Yönetici" kullanmayın.

  7. Hesabın süresinin dolacağı ve uzak masaüstü bağlantılarının engellendiği bir tarih seçin.

  8. Gerekli tüm bilgileri sağladıktan sonra Tamam'ı seçin. Visual Studio, seçilen sertifika kullanılarak şifrelenen parola da dahil olmak üzere Uzak Masaüstü ayarlarını projenizin .cscfg ve .csdef dosyalarına ekler.

  9. İleri düğmesini kullanarak kalan adımları tamamlayın ve ardından bulut hizmetinizi yayımlamaya hazır olduğunuzda Yayımla'yı seçin. Yayımlamaya hazır değilseniz İptal'i seçin ve değişiklikleri kaydetmeniz istendiğinde Evet'i yanıtlayın. Bulut hizmetinizi daha sonra bu ayarlarla yayımlayabilirsiniz.

Visual Studio 2017 sürüm 15.5 ve üzerini kullanırken Uzak Masaüstü'nü yapılandırma

Visual Studio 2017 sürüm 15.5 ve üzeri ile yayımlama sihirbazını bir bulut hizmeti projesiyle kullanmaya devam edebilirsiniz. Yalnızca tek bir geliştirici olarak çalışıyorsanız Uzak Masaüstü'nü tüm roller için etkinleştir seçeneğini de kullanabilirsiniz.

Bir ekibin parçası olarak çalışıyorsanız, bunun yerine Azure portal veya PowerShell kullanarak Azure bulut hizmetinde uzak masaüstünü etkinleştirmeniz gerekir.

Bu öneri, Visual Studio 2017 sürüm 15.5 ve sonraki sürümlerin bulut hizmeti VM'siyle iletişim kurma biçimindeki bir değişiklik nedeniyledir. Yayımlama sihirbazı aracılığıyla Uzak Masaüstü'nü etkinleştirirken, Visual Studio'nun önceki sürümleri "RDP eklentisi" adı verilen şey aracılığıyla VM ile iletişim kurar. Visual Studio 2017 sürüm 15.5 ve üzeri, daha güvenli ve daha esnek olan "RDP uzantısını" kullanarak iletişim kurar. Bu değişiklik, Uzak Masaüstü'nü etkinleştirmek için Azure portal ve PowerShell yöntemlerinin RDP uzantısını da kullanması gerçeğiyle de uyumlu hale getirir.

Visual Studio RDP uzantısıyla iletişim kurarken TLS üzerinden düz metin parolası iletir. Ancak, projenin yapılandırma dosyaları yalnızca şifrelenmiş bir parola depolar ve şifresi yalnızca onu şifrelemek için kullanılan yerel sertifikayla düz metin olarak çözülebilir.

Bulut hizmeti projesini her seferinde aynı geliştirme bilgisayarından dağıtırsanız, bu yerel sertifika kullanılabilir. Bu durumda, yayımlama sihirbazındaki Uzak Masaüstünü tüm roller için etkinleştir seçeneğini kullanmaya devam edebilirsiniz.

Ancak siz veya diğer geliştiriciler bulut hizmeti projesini farklı bilgisayarlardan dağıtmak istiyorsanız, bu diğer bilgisayarlar parolanın şifresini çözmek için gerekli sertifikaya sahip olmaz. Sonuç olarak aşağıdaki hata iletisini görürsünüz:

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

Bulut hizmetini her dağıttığınızda parolayı değiştirebilirsiniz, ancak bu eylem Uzak Masaüstü'nü kullanması gereken herkes için uygun olmaz.

Projeyi bir ekiple paylaşıyorsanız, yayımlama sihirbazındaki seçeneği temizlemek ve bunun yerine Uzak Masaüstü'nü doğrudan Azure portal veya PowerShell kullanarak etkinleştirmek en iyisidir.

Visual Studio 2017 sürüm 15.5 ve üzeri ile derleme sunucusundan dağıtma

Derleme aracısında Visual Studio 2017 sürüm 15.5 veya üzerinin yüklü olduğu bir derleme sunucusundan (örneğin, Azure DevOps Services ile) bir bulut hizmeti projesi dağıtabilirsiniz. Bu düzenleme ile dağıtım, şifreleme sertifikasının bulunduğu bilgisayardan gerçekleşir.

Azure DevOps Services RDP uzantısını kullanmak için derleme işlem hattınıza aşağıdaki ayrıntıları ekleyin:

  1. Dağıtımın RDP eklentisi yerine RDP uzantısıyla çalıştığından emin olmak için MSBuild bağımsız değişkenlerinize ekleyin /p:ForceRDPExtensionOverPlugin=true . Örnek:

    msbuild AzureCloudService5.ccproj /t:Publish /p:TargetProfile=Cloud /p:DebugType=None
        /p:SkipInvalidConfigurations=true /p:ForceRDPExtensionOverPlugin=true
    
  2. Derleme adımlarınızdan sonra Azure Bulut Hizmeti Dağıtımı adımını ekleyin ve özelliklerini ayarlayın.

  3. Dağıtım adımından sonra bir Azure PowerShell adımı ekleyin, Görünen ad özelliğini "Azure Dağıtımı: RDP Uzantısını Etkinleştir" (veya başka bir uygun ad) olarak ayarlayın ve uygun Azure aboneliğinizi seçin.

  4. Betik Türü'nü "Satır içi" olarak ayarlayın ve aşağıdaki kodu Satır içi Betik alanına yapıştırın. (Ayrıca bu betikle projenizde bir .ps1 dosya oluşturabilir, Betik Türü'nü "Betik Dosyası Yolu" olarak ayarlayabilir ve Betik Yolu'nu dosyaya işaret etmek üzere ayarlayabilirsiniz.)

    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
    

Uzak Masaüstü'nü kullanarak Azure Rolüne bağlanma

Bulut hizmetinizi Azure'da yayımladıktan ve Uzak Masaüstü'nü etkinleştirdikten sonra, bulut hizmeti VM'sinde oturum açmak için Visual Studio Server Explorer'ı kullanabilirsiniz:

  1. Sunucu Gezgini'nde Azure düğümünü genişletin ve ardından bulut hizmetinin düğümünü ve rollerinden birini genişleterek örneklerin listesini görüntüleyin.

  2. Bir örnek düğümüne sağ tıklayın ve Uzak Masaüstü Kullanarak Bağlan'ı seçin.

  3. Daha önce oluşturduğunuz kullanıcı adını ve parolayı girin. Artık uzak oturumunuzda oturum açtınız.

Ek kaynaklar

Cloud Services’ı Yapılandırma