Aanvragen voor certificaatondertekening genereren voor Azure Stack Hub

U gebruikt het hulpprogramma Gereedheidscontrole van Azure Stack Hub om aanvragen voor certificaatondertekening (CDR's) te maken die geschikt zijn voor een Azure Stack Hub-implementatie of voor het vernieuwen van certificaten voor een bestaande implementatie. Het is belangrijk om certificaten aan te vragen, te genereren en te valideren met voldoende doorlooptijd om ze te testen voordat ze worden geïmplementeerd.

Het hulpprogramma wordt gebruikt om de volgende certificaten aan te vragen, op basis van de selector Kies een CSR-certificaatscenario bovenaan dit artikel:

  • Standaardcertificaten voor een nieuwe implementatie: kies Nieuwe implementatie met behulp van de selector Kies een CSR-certificaatscenario bovenaan dit artikel.
  • Verlengingscertificaten voor een bestaande implementatie: kies Verlenging met behulp van de selector Kies een CSR-certificaatscenario bovenaan dit artikel.
  • PaaS-certificaten (Platform-as-a-Service): kunnen optioneel worden gegenereerd met zowel standaardcertificaten als verlengingscertificaten. Zie PKI-certificaatvereisten (Public Key Infrastructure) van Azure Stack Hub - optionele PaaS-certificaten voor meer informatie.

Vereisten

Voordat u CSV's voor PKI-certificaten voor een Azure Stack Hub-implementatie genereert, moet uw systeem voldoen aan de volgende vereisten:

  • U moet zich op een computer met Windows 10 of hoger of Windows Server 2016 of hoger.
  • Installeer het hulpprogramma Gereedheidscontrole van Azure Stack Hub vanuit een PowerShell-prompt (5.1 of hoger) met behulp van de volgende cmdlet:
         Install-Module Microsoft.AzureStack.ReadinessChecker -Force -AllowPrerelease
    
  • U hebt de volgende kenmerken nodig voor uw certificaat:
    • Regionaam
    • Externe FQDN (Fully Qualified Domain Name)
    • Onderwerp

CSV's genereren voor nieuwe implementatiecertificaten

Notitie

Benodigde bevoegdheden zijn vereist om aanvragen voor certificaatondertekening te genereren. In beperkte omgevingen waar uitbreiding niet mogelijk is, kunt u dit hulpprogramma gebruiken om sjabloonbestanden met duidelijke tekst te genereren, die alle informatie bevatten die vereist is voor externe Azure Stack Hub-certificaten. Vervolgens moet u deze sjabloonbestanden gebruiken in een sessie met verhoogde bevoegdheid om het genereren van het openbare/persoonlijke sleutelpaar te voltooien. Zie hieronder voor meer informatie.

Voer de volgende stappen uit om CDR's voor te bereiden op nieuwe Azure Stack Hub PKI-certificaten:

  1. Open een PowerShell-sessie op de computer waarop u het hulpprogramma Gereedheidscontrole hebt geïnstalleerd.

  2. Declareer de volgende variabelen:

    Notitie

    <regionName>.<externalFQDN> vormt de basis waarop alle externe DNS-namen in Azure Stack Hub worden gemaakt. In het volgende voorbeeld is portal.east.azurestack.contoso.comde portal .

    $outputDirectory = "$ENV:USERPROFILE\Documents\AzureStackCSR" # An existing output directory
    $IdentitySystem = "AAD"                     # Use "AAD" for Azure Active Director, "ADFS" for Active Directory Federation Services
    $regionName = 'east'                        # The region name for your Azure Stack Hub deployment
    $externalFQDN = 'azurestack.contoso.com'    # The external FQDN for your Azure Stack Hub deployment
    

Genereer nu de CDR's met dezelfde PowerShell-sessie. De instructies zijn specifiek voor de onderwerpindeling die u hieronder selecteert:

Notitie

De eerste DNS-naam van de Azure Stack Hub-service wordt geconfigureerd als het CN-veld voor de certificaataanvraag.

  1. Declareer een onderwerp, bijvoorbeeld:

    $subject = "C=US,ST=Washington,L=Redmond,O=Microsoft,OU=Azure Stack Hub"
    
  1. Genereer CDR's door een van de volgende handelingen uit te voeren:

    • Voor een productie-implementatieomgeving genereert het eerste script CDR's voor implementatiecertificaten:

      New-AzsHubDeploymentCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory -IdentitySystem $IdentitySystem
      
    • Het tweede script maakt, indien gewenst, gebruik van de -IncludeContainerRegistry en genereert een CSR voor Azure Container Registry op hetzelfde moment als CDR's voor implementatiecertificaten:

      New-AzsHubDeploymentCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory -IdentitySystem $IdentitySystem -IncludeContainerRegistry
      
    • Met het derde script worden CSV's gegenereerd voor optionele PaaS-services die u hebt geïnstalleerd:

      # App Services
      New-AzsHubAppServicesCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory
      
      # DBAdapter (SQL/MySQL)
      New-AzsHubDbAdapterCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory
      
      # EventHubs
      New-AzsHubEventHubsCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory
      
      # Azure Container Registry
      New-AzsHubAzureContainerRegistryCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory 
      
    • Voor een omgeving met weinig bevoegdheden voegt u de parameter toe om een certificaatsjabloonbestand met duidelijke tekst te genereren met de benodigde kenmerken gedeclareerd -LowPrivilege :

      New-AzsHubDeploymentCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -subject $subject -OutputRequestPath $OutputDirectory -IdentitySystem $IdentitySystem -LowPrivilege
      
    • Voor een ontwikkel- en testomgeving voegt u de parameter en waarde toe -RequestType SingleCSR om één CSR met alternatieve namen voor meerdere onderwerpen te genereren.

      Belangrijk

      We raden u aan deze methode niet te gebruiken voor productieomgevingen.

      New-AzsHubDeploymentCertificateSigningRequest -RegionName $regionName -FQDN $externalFQDN -RequestType SingleCSR -subject $subject -OutputRequestPath $OutputDirectory -IdentitySystem $IdentitySystem
      

Voer de laatste stappen uit:

  1. Controleer de uitvoer:

    Starting Certificate Request Process for Deployment
    CSR generating for following SAN(s): *.adminhosting.east.azurestack.contoso.com,*.adminvault.east.azurestack.contoso.com,*.blob.east.azurestack.contoso.com,*.hosting.east.azurestack.contoso.com,*.queue.east.azurestack.contoso.com,*.table.east.azurestack.contoso.com,*.vault.east.azurestack.contoso.com,adminmanagement.east.azurestack.contoso.com,adminportal.east.azurestack.contoso.com,management.east.azurestack.contoso.com,portal.east.azurestack.contoso.com
    Present this CSR to your Certificate Authority for Certificate Generation:  C:\Users\username\Documents\AzureStackCSR\Deployment_east_azurestack_contoso_com_SingleCSR_CertRequest_20200710165538.req
    Certreq.exe output: CertReq: Request Created
    
  2. Als de -LowPrivilege parameter is gebruikt, is er een .inf-bestand gegenereerd in de C:\Users\username\Documents\AzureStackCSR submap. Bijvoorbeeld:

    C:\Users\username\Documents\AzureStackCSR\Deployment_east_azurestack_contoso_com_SingleCSR_CertRequest_20200710165538_ClearTextTemplate.inf

    Kopieer het bestand naar een systeem waar uitbreiding is toegestaan en onderteken vervolgens elke aanvraag met certreq met behulp van de volgende syntaxis: certreq -new <example.inf> <example.req>. Voltooi vervolgens de rest van het proces op dat verhoogde systeem, omdat het nieuwe certificaat dat is ondertekend door de CA moet worden gekoppeld aan de persoonlijke sleutel, die wordt gegenereerd op het systeem met verhoogde bevoegdheid.

  • De regio van uw systeem en de externe domeinnaam (FQDN) worden door de gereedheidscontrole gebruikt om het eindpunt te bepalen voor het extraheren van kenmerken uit uw bestaande certificaten. Als een van de volgende opties van toepassing is op uw scenario, moet u de selector Een CSR-certificaatscenario kiezen bovenaan dit artikel gebruiken en in plaats daarvan de nieuwe implementatieversie van dit artikel kiezen:
    • U wilt de kenmerken van certificaten op het eindpunt wijzigen, zoals onderwerp, sleutellengte en handtekening-algoritme.
    • U wilt een certificaatonderwerp gebruiken dat alleen het kenmerk common name bevat.
  • Controleer voordat u begint of u https-connectiviteit hebt voor uw Azure Stack Hub-systeem.

CDR's voor verlengingscertificaten genereren

In deze sectie wordt de voorbereiding van CDR's voor het vernieuwen van bestaande Azure Stack Hub PKI-certificaten behandeld.

CDR's genereren

  1. Open een PowerShell-sessie op de computer waarop u het hulpprogramma Gereedheidscontrole hebt geïnstalleerd.

  2. Declareer de volgende variabelen:

    Notitie

    De gereedheidscontrole gebruikt stampEndpoint plus een vooraf gedefinieerde tekenreeks om bestaande certificaten te vinden. wordt bijvoorbeeld portal.east.azurestack.contoso.com gebruikt voor implementatiecertificaten, sso.appservices.east.azurestack.contoso.com voor App Services-certificaten, enzovoort.

    $regionName = 'east'                                            # The region name for your Azure Stack Hub deployment
    $externalFQDN = 'azurestack.contoso.com'                        # The external FQDN for your Azure Stack Hub deployment    
    $stampEndpoint = "$regionName.$externalFQDN"
    $outputDirectory = "$ENV:USERPROFILE\Documents\AzureStackCSR"   # Declare the path to an existing output directory
    
  3. Genereer CDR's door een of meer van de volgende handelingen uit te voeren:

    • Voor een productieomgeving genereert het eerste script CDR's voor implementatiecertificaten:

      New-AzsHubDeploymentCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory
      
    • Het tweede script maakt, indien gewenst, gebruik van de -IncludeContainerRegistry en genereert een CSR voor Azure Container Registry op hetzelfde moment als CDR's voor implementatiecertificaten:

      New-AzsHubDeploymentCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory -IncludeContainerRegistry
      
    • Met het derde script worden CSV's gegenereerd voor optionele PaaS-services die u hebt geïnstalleerd:

      # App Services
      New-AzsHubAppServicesCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory
      
      # DBAdapter
      New-AzsHubDBAdapterCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory
      
      # EventHubs
      New-AzsHubEventHubsCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory
      
      # Azure Container Registry
      New-AzsHubAzureContainerRegistryCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory 
      
    • Voor een ontwikkel- en testomgeving voegt u de parameter en waarde toe -RequestType SingleCSR om één CSR met alternatieve namen voor meerdere onderwerpen te genereren.

      Belangrijk

      We raden u aan deze methode niet te gebruiken voor productieomgevingen.

      New-AzsHubDeploymentCertificateSigningRequest -StampEndpoint $stampEndpoint -OutputRequestPath $OutputDirectory -RequestType SingleCSR
      
  4. Controleer de uitvoer:

    Querying StampEndpoint portal.east.azurestack.contoso.com for existing certificate
    Starting Certificate Request Process for Deployment
    CSR generating for following SAN(s): *.adminhosting.east.azurestack.contoso.com,*.adminvault.east.azurestack.contoso.com,*.blob.east.azurestack.contoso.com,*.hosting.east.azurestack.contoso.com,*.queue.east.azurestack.contoso.com,*.table.east.azurestack.contoso.com,*.vault.east.azurestack.contoso.com,adminmanagement.east.azurestack.contoso.com,adminportal.east.azurestack.contoso.com,management.east.azurestack.contoso.com,portal.east.azurestack.contoso.com
    Present this CSR to your certificate authority for certificate generation: C:\Users\username\Documents\AzureStackCSR\Deployment_east_azurestack_contoso_com_SingleCSR_CertRequest_20200710122723.req
    Certreq.exe output: CertReq: Request Created
    

Wanneer u klaar bent, verzendt u het gegenereerde .req-bestand naar uw CA (intern of openbaar). De map die door de $outputDirectory variabele is opgegeven, bevat de CDR's die moeten worden ingediend bij een CA. De map bevat ter referentie ook een onderliggende map met de .inf-bestanden die moeten worden gebruikt tijdens het genereren van certificaataanvragen. Zorg ervoor dat uw CA certificaten genereert met behulp van een gegenereerde aanvraag die voldoet aan de PKI-vereisten van Azure Stack Hub.

Volgende stappen

Zodra u uw certificaten van uw certificeringsinstantie hebt ontvangen, volgt u de stappen in PKI-certificaten van Azure Stack Hub voorbereiden op hetzelfde systeem.