Het bevoegde eindpunt gebruiken in Azure Stack Hub
Als Azure Stack Hub-operator moet u de beheerportal, PowerShell of Azure Resource Manager-API's gebruiken voor de meeste dagelijkse beheertaken. Voor sommige minder gangbare bewerkingen moet u echter de Privileged Endpoint (PEP) gebruiken. Het PEP is een vooraf geconfigureerde externe PowerShell-console die u net genoeg mogelijkheden biedt om u te helpen een vereiste taak uit te voeren. Het eindpunt maakt gebruik van PowerShell JEA (Just Enough Administration) om slechts een beperkte set cmdlets beschikbaar te maken. Voor toegang tot het PEP en het aanroepen van de beperkte set cmdlets wordt een account met beperkte bevoegdheden gebruikt. Er zijn geen beheerdersaccounts vereist. Voor extra beveiliging is scripting niet toegestaan.
U kunt het PEP gebruiken om deze taken uit te voeren:
- Taken op laag niveau, zoals het verzamelen van diagnostische logboeken.
- Veel taken na de implementatie van datacenterintegratie voor geïntegreerde systemen, zoals het toevoegen van DNS-doorstuurservers (Domain Name System) na implementatie, het instellen van Microsoft Graph-integratie, Integratie van Active Directory Federation Services (AD FS), certificaatrotatie, enzovoort.
- Om samen met ondersteuningsmedewerkers tijdelijke toegang op hoog niveau te krijgen voor uitgebreide probleemoplossing van een geïntegreerd systeem.
Het PEP registreert elke actie (en de bijbehorende uitvoer) die u in de PowerShell-sessie uitvoert. Dit biedt volledige transparantie en volledige controle van bewerkingen. U kunt deze logboekbestanden bewaren voor toekomstige audits.
Notitie
In de Azure Stack Development Kit (ASDK) kunt u enkele van de opdrachten die beschikbaar zijn in het PEP rechtstreeks uitvoeren vanuit een PowerShell-sessie op de development kit-host. Het is echter mogelijk dat u enkele bewerkingen wilt testen met behulp van het PEP, zoals het verzamelen van logboeken, omdat dit de enige methode is die beschikbaar is om bepaalde bewerkingen uit te voeren in een omgeving met geïntegreerde systemen.
Notitie
U kunt ook het OAW (Operator Access Workstation) gebruiken voor toegang tot het bevoegde eindpunt (PEP), de beheerdersportal voor ondersteuningsscenario's en GitHub Tools van Azure Stack Hub. Zie Azure Stack Hub Operator Access Workstationvoor meer informatie.
Toegang tot het bevoegde eindpunt
U opent het PEP via een externe PowerShell-sessie op de virtuele machine (VM) die als host fungeert voor het PEP. In de ASDK heeft deze VM de naam AzS-ERCS01. Als u een geïntegreerd systeem gebruikt, zijn er drie exemplaren van het PEP, die elk worden uitgevoerd binnen een VM (voorvoegsel-ERCS01, voorvoegsel-ERCS02 of voorvoegsel-ERCS03) op verschillende hosts voor tolerantie.
Voordat u met deze procedure begint voor een geïntegreerd systeem, moet u ervoor zorgen dat u toegang hebt tot het PEP via IP-adres of via DNS. Na de eerste implementatie van Azure Stack Hub hebt u alleen toegang tot het PEP per IP-adres omdat DNS-integratie nog niet is ingesteld. Uw OEM-hardwareleverancier biedt u een JSON-bestand met de naam AzureStackStampDeploymentInfo die de PEP IP-adressen bevat.
U vindt het IP-adres ook in de Azure Stack Hub-beheerportal. Open het portaal; bijvoorbeeld https://adminportal.local.azurestack.external
. Selecteer regiobeheer>eigenschappen.
U moet uw huidige cultuur instellen op en-US
wanneer u het bevoegde eindpunt uitvoert, anders werken cmdlets zoals Test-AzureStack
of Get-AzureStackLog
niet zoals verwacht.
Notitie
Om veiligheidsredenen moeten we ervoor zorgen dat u alleen verbinding maakt met het PEP vanaf een beveiligde VM die wordt uitgevoerd op de host van de hardwarelevenscyclus, of vanaf een toegewezen en beveiligde computer, zoals een Privileged Access Workstation. De oorspronkelijke configuratie van de host voor de hardwarelevenscyclus mag niet worden gewijzigd van de oorspronkelijke configuratie (inclusief het installeren van nieuwe software) of wordt gebruikt om verbinding te maken met het PEP.
Stel de vertrouwensrelatie vast.
Voer op een geïntegreerd systeem de volgende opdracht uit vanuit een Windows PowerShell-sessie met verhoogde bevoegdheid om het PEP toe te voegen als een vertrouwde host op de beperkte VM die wordt uitgevoerd op de host van de hardwarelevenscyclus of het Privileged Access Workstation:
Set-Item WSMan:\localhost\Client\TrustedHosts -Value '<IP Address of Privileged Endpoint>' -Concatenate
Als u de ASDK uitvoert, meldt u zich aan bij de development kit-host.
Open een Windows PowerShell-sessie op de geharde VM die wordt uitgevoerd op de host van de hardware-levenscyclus of het Privileged Access-werkstation. Voer de volgende opdrachten uit om een externe sessie tot stand te brengen op de VIRTUELE machine die als host fungeert voor het PEP:
Op een geïntegreerd systeem:
$cred = Get-Credential $pep = New-PSSession -ComputerName <IP_address_of_ERCS> -ConfigurationName PrivilegedEndpoint -Credential $cred -SessionOption (New-PSSessionOption -Culture en-US -UICulture en-US) Enter-PSSession $pep
De parameter
ComputerName
kan het IP-adres of de DNS-naam zijn van een van de VM's die als host fungeert voor het PEP.Notitie
Azure Stack Hub maakt geen externe aanroep bij het valideren van de PEP-referentie. Hiervoor is gebruik gemaakt van een lokaal opgeslagen openbare RSA-sleutel.
Wanneer u de ASDK uitvoert:
$cred = Get-Credential $pep = New-PSSession -ComputerName azs-ercs01 -ConfigurationName PrivilegedEndpoint -Credential $cred -SessionOption (New-PSSessionOption -Culture en-US -UICulture en-US) Enter-PSSession $pep
Gebruik de volgende referenties wanneer u hierom wordt gevraagd:
- gebruikersnaam: Geef het CloudAdmin-account op in de indeling <Azure Stack Hub-domein>\cloudadmin.
- Wachtwoord: voer hetzelfde wachtwoord in dat is opgegeven tijdens de installatie voor het Beheerdersaccount van het AzureStackAdmin-domein.
Notitie
Als u geen verbinding kunt maken met het ERCS-eindpunt, voert u de stappen een en twee opnieuw uit met een ander IP-adres van de ERCS-VM.
Waarschuwing
Standaard is uw Azure Stack Hub-stempel geconfigureerd met slechts één CloudAdmin-account. Er zijn geen herstelopties als de accountreferenties verloren gaan, gecompromitteerd of vergrendeld zijn. U hebt geen toegang meer tot het bevoegde eindpunt en andere resources.
Het wordt ten zeerste aanbevolen dat u extra CloudAdmin-accountste maken, om te voorkomen dat uw stempel op eigen kosten opnieuw wordt geïmplementeerd. Zorg ervoor dat u deze referenties documenteert op basis van de richtlijnen van uw bedrijf.
Nadat u verbinding hebt gemaakt, verandert de prompt in [IP-adres of DE NAAM van de ERCS-VM]: PS> of naar [azs-ercs01]: PS>, afhankelijk van de omgeving. Voer hier
Get-Command
uit om de lijst met beschikbare cmdlets weer te geven.U kunt een verwijzing naar cmdlets vinden in referentie van het bevoorrechte eindpunt van Azure Stack Hub
Veel van deze cmdlets zijn alleen bedoeld voor geïntegreerde systeemomgevingen (zoals de cmdlets met betrekking tot datacentrumintegratie). In de ASDK zijn de volgende cmdlets gevalideerd:
- Clear-Host
- Close-PrivilegedEndpoint
- Exit-PSSession
- Get-AzureStackLog
- Get-AzureStackStampInformation
- Get-Command
- Get-FormatData
- Get-Help
- Get-ThirdPartyNotices
- Measure-Object
- New-CloudAdminUser
- Out-Default
- Remove-CloudAdminUser
- Select-Object
- Set-CloudAdminUserPassword
- Test-AzureStack
- Stop-AzureStack
- Get-ClusterLog
Het bevoegde eindpunt gebruiken
Zoals hierboven vermeld, is het PEP een PowerShell JEA eindpunt. Hoewel u een sterke beveiligingslaag biedt, vermindert een JEA-eindpunt enkele van de basismogelijkheden van PowerShell, zoals het uitvoeren van scripts of het voltooien van tabbladen. Als u een type scriptbewerking probeert uit te voeren, mislukt de bewerking met de fout ScriptsNotAllowed. Deze fout is verwacht gedrag.
Als u bijvoorbeeld de lijst met parameters voor een bepaalde cmdlet wilt ophalen, voert u de volgende opdracht uit:
Get-Command <cmdlet_name> -Syntax
U kunt ook de Import-PSSession cmdlet gebruiken om alle PEP-cmdlets te importeren in de huidige sessie op uw lokale computer. De cmdlets en functies van het PEP zijn nu beschikbaar op uw lokale computer, samen met tabvoltooiing en, meer in het algemeen, scripting. U kunt ook de module Get-Help- uitvoeren om cmdlet-instructies te bekijken.
Voer de volgende stappen uit om de PEP-sessie op uw lokale computer te importeren:
Stel de vertrouwensrelatie vast.
Voer op een geïntegreerd systeem de volgende opdracht uit vanuit een Windows PowerShell-sessie met verhoogde bevoegdheid om het PEP toe te voegen als een vertrouwde host op de geharde VM die draait op de hardwarelevenscyclus host of de Privileged Access Workstation.
winrm s winrm/config/client '@{TrustedHosts="<IP Address of Privileged Endpoint>"}'
Als u de ASDK uitvoert, meldt u zich aan bij de development kit-host.
Open een Windows PowerShell-sessie op de geharde VM die wordt uitgevoerd op de host van de hardware-levenscyclus of het Privileged Access-werkstation. Voer de volgende opdrachten uit om een externe sessie tot stand te brengen op de virtuele machine die als host fungeert voor het PEP:
Op een geïntegreerd systeem:
$cred = Get-Credential $session = New-PSSession -ComputerName <IP_address_of_ERCS> ` -ConfigurationName PrivilegedEndpoint -Credential $cred ` -SessionOption (New-PSSessionOption -Culture en-US -UICulture en-US)
De parameter
ComputerName
kan het IP-adres of de DNS-naam zijn van een van de VM's die als host fungeert voor het PEP.Als u de ASDK uitvoert:
$cred = Get-Credential $session = New-PSSession -ComputerName azs-ercs01 ` -ConfigurationName PrivilegedEndpoint -Credential $cred ` -SessionOption (New-PSSessionOption -Culture en-US -UICulture en-US)
Gebruik de volgende referenties wanneer u hierom wordt gevraagd:
gebruikersnaam: Geef het CloudAdmin-account op in de indeling <Azure Stack Hub-domein>\cloudadmin. (Voor ASDK is de gebruikersnaam azurestack\cloudadmin.)
Wachtwoord: voer hetzelfde wachtwoord in dat is opgegeven tijdens de installatie voor het Beheerdersaccount van het AzureStackAdmin-domein.
Importeer de PEP-sessie in uw lokale computer:
Import-PSSession $session
U kunt nu tabvoltooiing gebruiken en scripts uitvoeren zoals gebruikelijk in uw lokale PowerShell-sessie met alle functies en cmdlets van het PEP, zonder de beveiligingspostuur van Azure Stack Hub te verlagen. Genieten!
Sluit de geprivilegieerde eindpuntsessie
Zoals eerder vermeld, registreert het PEP elke actie (en de bijbehorende uitvoer) die u in de PowerShell-sessie doet. U moet de sessie sluiten met behulp van de cmdlet Close-PrivilegedEndpoint
. Met deze cmdlet wordt het eindpunt correct gesloten en worden de logboekbestanden overgedragen naar een externe bestandsshare voor retentie.
Om de eindsessie te sluiten:
Maak een externe bestandsshare die toegankelijk is voor het PEP. In een development kit-omgeving kunt u gewoon een bestandsshare maken op de development kit-host.
Voer de volgende cmdlet uit:
Close-PrivilegedEndpoint -TranscriptsPathDestination "\\fileshareIP\SharedFolder" -Credential Get-Credential
De cmdlet gebruikt de parameters in de volgende tabel:
Parameter Beschrijving Soort Vereist TranscriptsPathDestination Pad naar de externe bestandsshare gedefinieerd als 'fileshareIP\sharefoldername' Snaar Ja Bevoegdheidsbewijs Referenties voor toegang tot de bestandsshare SecureString Ja
Nadat de transcriptlogboekbestanden zijn overgebracht naar de bestandsshare, worden ze automatisch verwijderd uit het PEP.
Notitie
Als u de PEP-sessie sluit met behulp van de cmdlets Exit-PSSession
of Exit
, of als u de PowerShell-console sluit, worden de transcriptlogboeken niet overgedragen naar een bestandsshare. Ze blijven in het PEP. De volgende keer dat u Close-PrivilegedEndpoint
uitvoert en een bestandsshare opneemt, worden de transcriptlogboeken van de vorige sessies ook overgedragen. Gebruik geen Exit-PSSession
of Exit
om de PEP-sessie te sluiten; gebruik in plaats daarvan Close-PrivilegedEndpoint
.
Het bevoegde eindpunt ontgrendelen voor ondersteuningsscenario's
Tijdens een ondersteuningsscenario moet de Microsoft-ondersteuningstechnicus mogelijk de PowerShell-sessie met bevoegde eindpunten uitbreiden om toegang te krijgen tot de interne functies van de Azure Stack Hub-infrastructuur. Dit proces wordt soms informeel aangeduid als "breek het glas" of "ontgrendel het PEP". Het PEP-sessie-verhogingsproces is een tweestaps-, twee-personen-, twee-organisaties-authenticatieproces. De ontgrendelingsprocedure wordt gestart door de Azure Stack Hub-operator, die altijd controle over hun omgeving behoudt. De operator opent het PEP en voert deze cmdlet uit:
Get-SupportSessionToken
De cmdlet retourneert het token voor de ondersteuningssessieaanvraag, een zeer lange alfanumerieke tekenreeks. De operator geeft vervolgens het aanvraagtoken door aan de Microsoft-ondersteuningstechnicus via een medium van hun keuze (bijvoorbeeld chat, e-mail). De Microsoft-ondersteuningstechnicus gebruikt het aanvraagtoken om, indien geldig, een autorisatietoken voor ondersteuningssessies te genereren en terug te sturen naar de Azure Stack Hub-operator. In dezelfde PEP PowerShell-sessie geeft de operator vervolgens het autorisatietoken door als invoer voor deze cmdlet:
unlock-supportsession
cmdlet Unlock-SupportSession at command pipeline position 1
Supply values for the following parameters:
ResponseToken:
Als het autorisatietoken geldig is, wordt de PEP PowerShell-sessie verhoogd door volledige beheermogelijkheden en volledige bereikbaarheid in de infrastructuur te bieden.
Notitie
Alle bewerkingen en cmdlets die worden uitgevoerd in een PEP-sessie met verhoogde bevoegdheid, moeten worden uitgevoerd onder strikt toezicht van de Microsoft-ondersteuningstechnicus. Als u dit niet doet, kan dit leiden tot ernstige downtime, gegevensverlies en kan een volledige herverdeling van de Azure Stack Hub-omgeving nodig zijn.
Zodra de ondersteuningssessie is beëindigd, is het erg belangrijk om de PEP-sessie met verhoogde bevoegdheden te sluiten met behulp van de cmdlet Close-PrivilegedEndpoint zoals uitgelegd in de bovenstaande sectie. Een van de PEP-sessies wordt beëindigd, het ontgrendelingstoken is niet meer geldig en kan niet opnieuw worden gebruikt om de PEP-sessie opnieuw te ontgrendelen. Een verhoogde PEP-sessie heeft een geldigheid van 8 uur, waarna, indien niet beëindigd, de verhoogde PEP-sessie automatisch wordt vergrendeld naar een reguliere PEP-sessie.
Inhoud van de bevoegde eindpunttokens
De PEP-ondersteuningssessieaanvraag en autorisatietokens maken gebruik van cryptografie om de toegang te beveiligen en ervoor te zorgen dat alleen geautoriseerde tokens de PEP-sessie kunnen ontgrendelen. De tokens zijn ontworpen om cryptografisch te garanderen dat een antwoordtoken alleen kan worden geaccepteerd door de PEP-sessie die het aanvraagtoken heeft gegenereerd. PEP-tokens bevatten geen enkele vorm van informatie die een Azure Stack Hub-omgeving of een klant uniek kan identificeren. Ze zijn volledig anoniem. Hieronder vindt u de details van de inhoud van elk token.
Token voor aanvraag van ondersteuningssessie
Het PEP-aanvraagtoken voor ondersteuningssessies bestaat uit drie objecten:
- Een willekeurig gegenereerde sessie-id.
- Een zelfondertekend certificaat dat is gegenereerd om een eenmalig openbaar/persoonlijk sleutelpaar te hebben. Het certificaat bevat geen informatie over de omgeving.
- Een tijdstempel die aangeeft dat het aanvraagtoken verloopt.
Het aanvraagtoken wordt vervolgens versleuteld met de openbare sleutel van de Azure-cloud waarop de Azure Stack Hub-omgeving is geregistreerd.
Antwoordtoken voor sessieautorisatie ondersteunen
Het PEP-ondersteuningsantwoordtoken bestaat uit twee objecten:
- De willekeurig gegenereerde sessie-id die is geëxtraheerd uit het aanvraagtoken.
- Een tijdstempel die aangeeft dat het antwoordtoken verloopt.
Het antwoordtoken wordt vervolgens versleuteld met het zelfondertekende certificaat in het aanvraagtoken. Het zelfondertekende certificaat is ontsleuteld met de persoonlijke sleutel die is gekoppeld aan de Azure-cloud waarop de Azure Stack Hub-omgeving is geregistreerd.