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 een aantal minder voorkomende bewerkingen moet u echter het bevoegde eindpunt (PEP ) gebruiken. De PEP is een vooraf geconfigureerde externe PowerShell-console die u net voldoende mogelijkheden biedt om u te helpen een vereiste taak uit te voeren. Het eindpunt maakt gebruik van PowerShell JEA (Just Enough Administration) om alleen 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 het uitvoeren van scripts niet toegestaan.

U kunt het PEP gebruiken om deze taken uit te voeren:

  • Taken op laag niveau, zoals het verzamelen van diagnostische logboeken.
  • Veel post-implementatie datacenter integratietaken voor geïntegreerde systemen, zoals het toevoegen van Domain Name System (DNS) doorsturen na de implementatie, het instellen van Microsoft Graph-integratie, Active Directory Federation Services (AD FS) integratie, rotatie van certificaten, en meer.
  • Om te werken met ondersteuning voor tijdelijke toegang op hoog niveau voor diepgaande probleemoplossing van een geïntegreerd systeem.

De PEP registreert elke actie (en de bijbehorende uitvoer) die u in de PowerShell-sessie moet uitvoeren. Dit biedt volledige transparantie en volledige controle van bewerkingen. U kunt deze logboekbestanden bewaren voor toekomstige controles.

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. U kunt echter een aantal bewerkingen 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-werkstation (Operator Access Workstation) gebruiken voor toegang tot het bevoegde eindpunt (PEP), de beheerdersportal voor ondersteuningsscenario's en Azure Stack Hub GitHub Tools. Zie Operator Access Workstation Azure Stack Hub meer informatie.

Toegang tot het bevoegde eindpunt

U krijgt toegang tot het PEP via een externe PowerShell-sessie op de virtuele machine (VM) die als host voor het PEP wordt gebruikt. In de ASDK heet deze VM AzS-ERCS01. Als u een geïntegreerd systeem gebruikt, zijn er drie exemplaren van het PEP, die elk worden uitgevoerd binnen een VM (Prefix-ERCS01, Prefix-ERCS02 of Prefix-ERCS03) op verschillende hosts voor tolerantie.

Voordat u met deze procedure voor een geïntegreerd systeem begint, moet u ervoor zorgen dat u toegang hebt tot het PEP via een IP-adres of via DNS. Na de eerste implementatie van Azure Stack Hub, hebt u alleen toegang tot het PEP via het IP-adres omdat DNS-integratie nog niet is ingesteld. Uw OEM-hardwareleverancier levert u een JSON-bestand met de naam AzureStackStampDeploymentInfo dat de PEP-IP-adressen bevat.

Mogelijk vindt u het IP-adres ook in Azure Stack Hub-beheerdersportal. Open de portal, bijvoorbeeld https://adminportal.local.azurestack.external. Selecteer RegiobeheerProperties>.

U moet uw en-US huidige cultuurinstelling instellen op bij het uitvoeren van het bevoegde eindpunt, anders werken cmdlets zoals Test-AzureStack of Get-AzureStackLog niet zoals verwacht.

Notitie

Uit veiligheidsoverwegingen is het vereist 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 op basis van de oorspronkelijke configuratie (inclusief het installeren van nieuwe software) of worden gebruikt om verbinding te maken met het PEP.

  1. Stel de vertrouwensrelatie tot stand.

    • Voer op een geïntegreerd systeem de volgende opdracht uit vanuit een Windows PowerShell-sessie met verhoogde bevoegdheden om het PEP toe te voegen als een vertrouwde host op de geharde VM die wordt uitgevoerd op de hardwarelevenscyclushost of het Privileged Access Workstation.

      Set-Item WSMan:\localhost\Client\TrustedHosts -Value '<IP Address of Privileged Endpoint>' -Concatenate
      
    • Als u de ASDK gebruikt, meld u zich dan aan bij de development kit-host.

  2. Open op de geharde VM die wordt uitgevoerd op de hardwarelevenscyclushost of het Privileged Access Workstation een Windows PowerShell sessie. Voer de volgende opdrachten uit om een externe sessie tot stand te laten komen op de VM die als host voor het PEP wordt gebruikt:

    • 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 ComputerName parameter kan het IP-adres of de DNS-naam zijn van een van de VM's die als host voor het PEP worden gebruikt.

      Notitie

      Azure Stack Hub maakt geen externe aanroep bij het valideren van de PEP-referentie. Dit is afhankelijk van een lokaal opgeslagen openbare RSA-sleutel.

    • Als u de ASDK hebt:

      $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 hier om wordt gevraagd:

    • Gebruikersnaam: geef het CloudAdmin-account op in de indeling <Azure Stack Hub domain>\cloudadmin. (Voor ASDK is de gebruikersnaam azurestack\cloudadmin)
    • Wachtwoord: voer hetzelfde wachtwoord in dat is opgegeven tijdens de installatie van het domeinbeheerdersaccount AzureStackAdmin.

    Notitie

    Als u geen verbinding kunt maken met het ERCS-eindpunt, kunt u stap één en twee opnieuw proberen met een ander IP-adres van de ERCS-VM.

    Waarschuwing

    Standaard is uw Azure Stack Hub geconfigureerd met slechts één CloudAdmin-account. Er zijn geen herstelopties als de accountreferenties verloren zijn gegaan, zijn aangetast of zijn vergrendeld. U hebt geen toegang meer tot het bevoegde eindpunt en andere resources.

    Het wordt ten zeerste aangeraden om extra CloudAdmin-accounts te maken, om te voorkomen dat uw zegel zelf opnieuw wordt gebruikt. Zorg ervoor dat u deze referenties documenteert op basis van de richtlijnen van uw bedrijf.

  3. Nadat u verbinding hebt gemaakt, wordt de prompt gewijzigd in [IP-adres of ERCS VM-naam]: PS> of naar [azs-ercs01]: PS>, afhankelijk van de omgeving. Voer hier uit om Get-Command de lijst met beschikbare cmdlets te bekijken.

    U vindt een verwijzing voor cmdlets in op Azure Stack Hub privileged endpoint reference

    Veel van deze cmdlets zijn alleen bedoeld voor geïntegreerde systeemomgevingen (zoals de cmdlets met betrekking tot datacenterintegratie). 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 een deel van de basismogelijkheden van PowerShell, zoals het uitvoeren van scripts of het voltooien van tabbladen. Als u een bepaald type scriptbewerking probeert uit te voeren, mislukt de bewerking met de fout ScriptsNotAllowed. Deze fout is verwacht gedrag.

Voer bijvoorbeeld de volgende opdracht uit om de lijst met parameters voor een bepaalde cmdlet op te halen:

    Get-Command <cmdlet_name> -Syntax

U kunt ook de cmdlet Import-PSSession 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 het voltooien van tabbladen en, meer in het algemeen, het uitvoeren van scripts. U kunt ook de module Get-Help uitvoeren om de instructies voor cmdlet te bekijken.

Ga als volgt te werk om de PEP-sessie op uw lokale computer te importeren:

  1. Stel de vertrouwensrelatie tot stand.

    • Voer op een geïntegreerd systeem de volgende opdracht uit vanuit een Windows PowerShell-sessie met verhoogde bevoegdheden om het PEP toe te voegen als een vertrouwde host op de geharde VM die wordt uitgevoerd op de hardwarelevenscyclushost of het Privileged Access Workstation.

      winrm s winrm/config/client '@{TrustedHosts="<IP Address of Privileged Endpoint>"}'
      
    • Als u de ASDK gebruikt, meld u zich dan aan bij de development kit-host.

  2. Open op de geharde VM die wordt uitgevoerd op de hardwarelevenscyclushost of het Privileged Access Workstation een Windows PowerShell sessie. Voer de volgende opdrachten uit om een externe sessie tot stand te laten komen op de virtuele machine die als host voor het PEP wordt gebruikt:

    • 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 ComputerName parameter kan het IP-adres of de DNS-naam zijn van een van de VM's die als host voor het PEP worden gebruikt.

    • Als u de ASDK hebt:

      $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 hier om wordt gevraagd:

    • Gebruikersnaam: geef het CloudAdmin-account op in de indeling <Azure Stack Hub domain>\cloudadmin. (Voor ASDK is de gebruikersnaam azurestack\cloudadmin.)

    • Wachtwoord: voer hetzelfde wachtwoord in dat is opgegeven tijdens de installatie van het domeinbeheerdersaccount AzureStackAdmin.

  3. Importeer de PEP-sessie in uw lokale computer:

    Import-PSSession $session
    
  4. U kunt nu tabinvulling gebruiken en zoals gebruikelijk scripts uitvoeren in uw lokale PowerShell-sessie met alle functies en cmdlets van het PEP, zonder dat de beveiligingsstatus van de Azure Stack Hub. Veel plezier!

Sluit de sessie met bevoegde eindpunten

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 Close-PrivilegedEndpoint cmdlet . Met deze cmdlet wordt het eindpunt correct gesloten en worden de logboekbestanden voor retentie naar een externe bestands share overgeboekt.

De eindpuntsessie sluiten:

  1. Maak een externe bestands share die toegankelijk is voor het PEP. In een development kit-omgeving kunt u gewoon een bestands share maken op de development kit-host.

  2. Voer de volgende cmdlet uit:

    Close-PrivilegedEndpoint -TranscriptsPathDestination "\\fileshareIP\SharedFolder" -Credential Get-Credential
    

    De cmdlet gebruikt de parameters in de volgende tabel:

    Parameter Beschrijving Type Vereist
    TranscriptsPathDestination Pad naar de externe bestandsshare die is gedefinieerd als 'fileshareIP\sharefoldername' Tekenreeks Ja
    Referentie Referenties voor toegang tot de bestands share SecureString Yes

Nadat de transcriptielogboekbestanden zijn overgebracht naar de bestands share, worden ze automatisch verwijderd uit het PEP.

Notitie

Als u de PEP-sessie sluit met behulp van de cmdlets Exit-PSSessionExitof , of als u de PowerShell-console sluit, worden de transcriptielogboeken niet overgeplaatst naar een bestands share. Ze blijven in het PEP. De volgende keer dat u een Close-PrivilegedEndpoint bestands share op neemt, worden de transcriptielogboeken van de vorige sessie(en) ook overdragen. Gebruik of niet om de Exit-PSSessionExit PEP-sessie te sluiten. Gebruik in Close-PrivilegedEndpoint plaats daarvan.

Het bevoegde eindpunt ontgrendelen voor ondersteuningsscenario's

Tijdens een ondersteuningsscenario moet de Microsoft-ondersteuningstechnicus mogelijk het bevoegde eindpunt van de PowerShell-sessie verhogen om toegang te krijgen tot de interne Azure Stack Hub infrastructuur. Dit proces wordt soms informeel aangeduid als 'het glas breken' of 'het PEP ontgrendelen'. Het verhogingsproces voor de PEP-sessie bestaat uit twee stappen, twee personen, twee organisatieverificatie. De ontgrendelingsprocedure wordt geïnitieerd door Azure Stack Hub operator, die de controle over hun omgeving te allen tijde behoudt. De operator heeft toegang tot 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 het aanvraag token vervolgens door aan de Microsoft-ondersteuningstechnicus via een medium naar keuze (bijvoorbeeld chat, e-mail). De Ondersteuningstechnicus van Microsoft gebruikt het aanvraag-token om, indien van toepassing, een autorisatie-token voor een ondersteuningssessie te genereren en stuurt het terug naar de Azure Stack Hub operator. In dezelfde PEP PowerShell-sessie geeft de operator vervolgens het autorisatie-token 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 autorisatie-token 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 niveau 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 herdeployment van de Azure Stack Hub nodig zijn.

Zodra de ondersteuningssessie is beëindigd, is het heel belangrijk om de verhoogde PEP-sessie terug te sluiten met behulp van de cmdlet Close-PrivilegedEndpoint , zoals uitgelegd in de bovenstaande sectie. Als de PEP-sessie is beëindigd, is het ontgrendelings token niet meer geldig en kan het niet opnieuw worden gebruikt om de PEP-sessie opnieuw te ontgrendelen. Een PEP-sessie met verhoogde waarde heeft een geldigheidsduur van 8 uur, waarna, als deze niet wordt beëindigd, de verhoogde PEP-sessie automatisch weer wordt vergrendeld voor een reguliere PEP-sessie.

Inhoud van de bevoorrechte eindpunttokens

De aanvraag- en autorisatietokens van de PEP-ondersteuningssessie 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 informatie die een unieke identificatie kan Azure Stack Hub omgeving of een klant. Ze zijn volledig anoniem. Hieronder vindt u de details van de inhoud van elk token.

Token voor ondersteuningssessieaanvraag

Het aanvraag token voor de PEP-ondersteuningssessie bestaat uit drie objecten:

  • Een willekeurig gegenereerde sessie-id.
  • Een zelf-ondertekend certificaat dat wordt gegenereerd met het doel een een keer een openbaar/persoonlijk sleutelpaar te hebben. Het certificaat bevat geen informatie over de omgeving.
  • Een tijdstempel die aangeeft dat het aanvraag-token is verlopen.

Het aanvraag-token wordt vervolgens versleuteld met de openbare sleutel van de Azure-cloud waarvoor de Azure Stack Hub-omgeving is geregistreerd.

Antwoord-token voor ondersteuningssessieautorisatie

Het token voor autorisatierespons van PEP-ondersteuning bestaat uit twee objecten:

  • De willekeurig gegenereerde sessie-id die is geëxtraheerd uit het aanvraag-token.
  • Een tijdstempel die de vervaldatum van het antwoord-token aangeeft.

Het antwoord-token wordt vervolgens versleuteld met het zelf-ondertekende certificaat in het aanvraag-token. Het zelf-ondertekende certificaat is ontsleuteld met de persoonlijke sleutel die is gekoppeld aan de Azure-cloud waarvoor de Azure Stack Hub is geregistreerd.

Volgende stappen