Verbinding met extern bureaublad inschakelen voor een rol in Azure Cloud Services (klassiek) met behulp van PowerShell
Belangrijk
Cloud Services (klassiek) is vanaf 1 september 2024 afgeschaft voor alle klanten. Bestaande actieve implementaties worden gestopt en afgesloten door Microsoft en de gegevens gaan vanaf oktober 2024 permanant verloren. Nieuwe implementaties moeten gebruikmaken van het nieuwe op Azure Resource Manager gebaseerde implementatiemodel Azure Cloud Services (uitgebreide ondersteuning).
Met Extern bureaublad hebt u toegang tot het bureaublad van een rol die wordt uitgevoerd in Azure. U kunt een verbinding met extern bureaublad gebruiken om problemen met uw toepassing op te lossen en te diagnosticeren terwijl deze wordt uitgevoerd.
In dit artikel wordt beschreven hoe u extern bureaublad inschakelt voor uw cloudservicerollen met behulp van PowerShell. Zie Hoe u Azure PowerShell installeert en configureert voor de vereisten die nodig zijn voor dit artikel. PowerShell maakt gebruik van de extern bureaublad-extensie, zodat u Extern bureaublad kunt inschakelen nadat de toepassing is geïmplementeerd.
Extern bureaublad configureren vanuit PowerShell
Met de cmdlet Set-AzureServiceRemoteDesktopExtension kunt u Extern bureaublad inschakelen voor opgegeven rollen of alle rollen van uw cloudservice-implementatie. Met de cmdlet kunt u de gebruikersnaam en het wachtwoord voor de extern bureaubladgebruiker opgeven via de referentieparameter die een PSCredential-object accepteert.
Als u PowerShell interactief gebruikt, kunt u het PSCredential-object eenvoudig instellen door de cmdlet Get-Credentials aan te roepen.
$remoteusercredentials = Get-Credential
Met deze opdracht wordt een dialoogvenster weergegeven waarin u de gebruikersnaam en het wachtwoord voor de externe gebruiker op een veilige manier kunt invoeren.
Omdat PowerShell helpt bij automatiseringsscenario's, kunt u het PSCredential-object ook zo instellen dat gebruikersinteractie niet nodig is. Eerst moet u een beveiligd wachtwoord instellen. U begint met het opgeven van een wachtwoord voor tekst zonder opmaak en converteert deze naar een beveiligde tekenreeks met behulp van ConvertTo-SecureString. Vervolgens moet u deze beveiligde tekenreeks converteren naar een versleutelde standaardtekenreeks met behulp van ConvertFrom-SecureString. U kunt deze versleutelde standaardtekenreeks nu opslaan in een bestand met set-inhoud.
U kunt ook een beveiligd wachtwoordbestand maken, zodat u niet telkens het wachtwoord hoeft in te voeren. Een beveiligd wachtwoordbestand is ook beter dan een tekstbestand zonder opmaak. Gebruik de volgende PowerShell om een beveiligd wachtwoordbestand te maken:
ConvertTo-SecureString -String "Password123" -AsPlainText -Force | ConvertFrom-SecureString | Set-Content "password.txt"
Belangrijk
Zorg er bij het instellen van het wachtwoord voor dat u voldoet aan de complexiteitsvereisten.
Als u het referentieobject wilt maken op basis van het beveiligde wachtwoordbestand, moet u de bestandsinhoud lezen en weer converteren naar een beveiligde tekenreeks met behulp van ConvertTo-SecureString.
De cmdlet Set-AzureServiceRemoteDesktopExtension accepteert ook een vervaldatumparameter , waarmee een DateTime wordt opgegeven waarop het gebruikersaccount verloopt. U kunt bijvoorbeeld instellen dat het account een paar dagen verloopt vanaf de huidige datum en tijd.
In dit PowerShell-voorbeeld ziet u hoe u de extern bureaublad-extensie instelt op een cloudservice:
$servicename = "cloudservice"
$username = "RemoteDesktopUser"
$securepassword = Get-Content -Path "password.txt" | ConvertTo-SecureString
$expiry = $(Get-Date).AddDays(1)
$credential = New-Object System.Management.Automation.PSCredential $username,$securepassword
Set-AzureServiceRemoteDesktopExtension -ServiceName $servicename -Credential $credential -Expiration $expiry
U kunt desgewenst ook de implementatiesite en rollen opgeven waarop u extern bureaublad wilt inschakelen. Als deze parameters niet zijn opgegeven, schakelt de cmdlet extern bureaublad in voor alle rollen in de productie-implementatiesite .
De extensie Extern bureaublad is gekoppeld aan een implementatie. Als u een nieuwe implementatie voor de service maakt, moet u extern bureaublad inschakelen voor die implementatie. Als u extern bureaublad altijd wilt inschakelen, moet u overwegen de PowerShell-scripts te integreren in uw implementatiewerkstroom.
Extern bureaublad in een rolinstantie
De cmdlet Get-AzureRemoteDesktopFile wordt gebruikt voor extern bureaublad in een specifiek rolexemplaren van uw cloudservice. U kunt de parameter LocalPath gebruiken om het RDP-bestand (Remote Desktop Protocol) lokaal te downloaden. U kunt ook de parameter Starten gebruiken om het dialoogvenster Verbinding met extern bureaublad rechtstreeks te starten voor toegang tot het exemplaar van de cloudservicerol.
Get-AzureRemoteDesktopFile -ServiceName $servicename -Name "WorkerRole1_IN_0" -Launch
Controleer of de extensie Extern bureaublad is ingeschakeld voor een service
De cmdlet Get-AzureServiceRemoteDesktopExtension geeft aan dat extern bureaublad is ingeschakeld of uitgeschakeld voor een service-implementatie. De cmdlet retourneert de gebruikersnaam voor de extern bureaublad-gebruiker en de rollen waarvoor de extensie extern bureaublad is ingeschakeld. De implementatiesite wordt standaard gebruikt, maar u kunt ervoor kiezen om in plaats daarvan de staging-site te gebruiken.
Get-AzureServiceRemoteDesktopExtension -ServiceName $servicename
De extensie Extern bureaublad verwijderen uit een service
Als u de extensie voor extern bureaublad al hebt ingeschakeld bij een implementatie en de instellingen voor extern bureaublad moet bijwerken, moet u eerst de extensie verwijderen. Schakel deze vervolgens opnieuw in met de nieuwe instellingen. Als u bijvoorbeeld een nieuw wachtwoord wilt instellen voor het externe gebruikersaccount of het account is verlopen. Deze stap is vereist voor bestaande implementaties waarvoor de extensie extern bureaublad is ingeschakeld. Voor nieuwe implementaties kunt u de extensie rechtstreeks toepassen.
Als u de extensie voor extern bureaublad uit de implementatie wilt verwijderen, kunt u de cmdlet Remove-AzureServiceRemoteDesktopExtension gebruiken. U kunt desgewenst ook de implementatiesite en -rol opgeven waaruit u de extensie voor extern bureaublad wilt verwijderen.
Remove-AzureServiceRemoteDesktopExtension -ServiceName $servicename -UninstallConfiguration
Notitie
Als u de extensieconfiguratie volledig wilt verwijderen, moet u de cmdlet remove aanroepen met de parameter UninstallConfiguration .
De parameter UninstallConfiguration verwijdert alle extensieconfiguraties die op de service worden toegepast. Elke extensieconfiguratie is gekoppeld aan de serviceconfiguratie. Als u de cmdlet remove aanroept zonder UninstallConfiguration , wordt de implementatie losgekoppeld van de extensieconfiguratie, waardoor de extensie effectief wordt verwijderd. De extensieconfiguratie blijft echter gekoppeld aan de service.