Geheimen roteren voor Event Hubs in Azure Stack Hub
In dit artikel wordt beschreven hoe u de geheimen roteert die worden gebruikt door de Event Hubs-resourceprovider.
Overzicht en vereisten
Notitie
Geheimrotatie voor resourceproviders (RPS's) voor waarde-toevoegen wordt momenteel alleen ondersteund via PowerShell. Bovendien moet u geheimen proactief roteren voor RP's met waarde-toevoegen op regelmatige basis, omdat er momenteel geen beheerderswaarschuwingen worden gegenereerd.
Net als bij de Azure Stack Hub-infrastructuur gebruiken resourceproviders voor waarde-toevoegen zowel interne als externe geheimen. Geheimen kunnen meerdere vormen aannemen, waaronder wachtwoorden en de versleutelingssleutels die worden onderhouden door X509-certificaten. Als operator bent u verantwoordelijk voor:
- Het leveren van bijgewerkte externe geheimen, zoals een nieuw TLS-certificaat dat wordt gebruikt voor het beveiligen van eindpunten van de resourceprovider.
- Het regelmatig beheren van geheimrotatie van de resourceprovider.
Ter voorbereiding op het rotatieproces:
Controleer de PKI-certificaatvereisten (Public Key Infrastructure) van Azure Stack Hub voor belangrijke vereiste informatie voordat u uw X509-certificaat verkrijgt/vernieuwt, inclusief details over de vereiste PFX-indeling. Bekijk ook de vereisten die zijn opgegeven in de sectie Optionele PaaS-certificaten voor uw specifieke resourceprovider voor waarde-toevoegen.
Als u dat nog niet hebt gedaan, installeert u de PowerShell Az-module voor Azure Stack Hub voordat u doorgaat. Versie 2.0.2-preview of hoger is vereist voor het rouleren van geheimen van Azure Stack Hub. Zie Migrate van AzureRM naar Azure PowerShell Az in Azure Stack Hub voor meer informatie.
Een nieuw TLS-certificaat voorbereiden
Maak of vernieuw vervolgens uw TLS-certificaat voor het beveiligen van de eindpunten van de resourceprovider voor waarde toevoegen:
Voer de stappen uit in AANVRAGEN voor certificaatondertekening genereren (CDR's) voor certificaatvernieuwing voor uw resourceprovider. Hier gebruikt u het hulpprogramma Gereedheidscontrole voor Azure Stack Hub om de CSR te maken. Zorg ervoor dat u de juiste cmdlet voor uw resourceprovider uitvoert in de stap Certificaataanvragen genereren voor andere Azure Stack Hub-services. Wordt bijvoorbeeld
New-AzsHubEventHubsCertificateSigningRequestgebruikt voor Event Hubs. Wanneer u klaar bent, verzendt u de gegenereerde . REQ-bestand naar uw certificeringsinstantie (CA) voor het nieuwe certificaat.Nadat u het certificaatbestand van de CA hebt ontvangen, voert u de stappen in Certificaten voorbereiden voor implementatie of rotatie uit. U gebruikt het hulpprogramma Gereedheidscontrole opnieuw om het bestand te verwerken dat is geretourneerd door de CA.
Voltooi ten slotte de stappen in PKI-certificaten van Azure Stack Hub valideren. U gebruikt het hulpprogramma Gereedheidscontrole nogmaals om validatietests uit te voeren op uw nieuwe certificaat.
Geheimen draaien
Bepaal ten slotte de meest recente implementatie-eigenschappen van de resourceprovider en gebruik deze om het geheimrotatieproces te voltooien.
Implementatie-eigenschappen bepalen
Resourceproviders worden als een versiepakket geïmplementeerd in uw Azure Stack Hub-omgeving. Aan pakketten wordt een unieke pakket-id toegewezen, in de indeling '<product-id>.<installed-version>'. Waar <product-id> is een unieke tekenreeks die de resourceprovider vertegenwoordigt en <installed-version> een specifieke versie vertegenwoordigt. De geheimen die aan elk pakket zijn gekoppeld, worden opgeslagen in de Azure Stack Hub Key Vault-service.
Open een PowerShell-console met verhoogde bevoegdheid en voer de volgende stappen uit om de eigenschappen te bepalen die nodig zijn om de geheimen van de resourceprovider te roteren:
Meld u aan bij uw Azure Stack Hub-omgeving met behulp van uw operatorreferenties. Zie Verbinding maken naar Azure Stack Hub met PowerShell voor PowerShell-aanmeldingsscript. Zorg ervoor dat u de PowerShell Az-cmdlets (in plaats van AzureRM) gebruikt en alle tijdelijke aanduidingen vervangt, zoals eindpunt-URL's en tenantnaam van de directory.
Voer de
Get-AzsProductDeploymentcmdlet uit om een lijst met de meest recente resourceproviderimplementaties op te halen. De geretourneerde verzameling bevat een element voor elke geïmplementeerde"value"resourceprovider. Zoek de resourceprovider van belang en noteer de waarden voor deze eigenschappen:"name"- bevat de product-id van de resourceprovider in het tweede segment van de waarde."properties"."deployment"."version"- bevat het momenteel geïmplementeerde versienummer.
In het volgende voorbeeld ziet u de Event Hubs RP-implementatie in het eerste element in de verzameling, met een product-id van
"microsoft.eventhub"en versie"1.2003.0.0":PS C:\WINDOWS\system32> Get-AzsProductDeployment -AsJson VERBOSE: GET https://adminmanagement.myregion.mycompany.com/subscriptions/ze22ca96-z546-zbc6-z566-z35f68799816/providers/Microsoft.Deployment.Admin/locations/global/productDeployments?api-version=2019-01-01 with 0-char payload VERBOSE: Received 2656-char response, StatusCode = OK { "value": [ { "id": "/subscriptions/ze22ca96-z546-zbc6-z566-z35f68799816/providers/Microsoft.Deployment.Admin/locations/global/productDeployments/microsoft.eventhub", "name": "global/microsoft.eventhub", "type": "Microsoft.Deployment.Admin/locations/productDeployments", "properties": { "status": "DeploymentSucceeded", "subscriptionId": "b37ae55a-a6c6-4474-ba97-81519412adf5", "deployment": { "version": "1.2003.0.0", "actionPlanInstanceResourceId":"/subscriptions/ze22ca96-z546-zbc6-z566-z35f68799816/providers/Microsoft.Deployment.Admin/locations/global/actionplans/abcdfcd3-fef0-z1a3-z85d-z6ceb0f31e36", "parameters": { } }, "lastSuccessfulDeployment": { "version": "1.2003.0.0", "actionPlanInstanceResourceId":"/subscriptions/ze22ca96-z546-zbc6-z566-z35f68799816/providers/Microsoft.Deployment.Admin/locations/global/actionplans/abcdfcd3-fef0-z1a3-z85d-z6ceb0f31e36", "parameters": { } }, "provisioningState": "Succeeded" } }, { ... } ] }Bouw de pakket-id van de resourceprovider door de product-id en versie van de resourceprovider samen te stellen. Als u bijvoorbeeld de waarden gebruikt die in de vorige stap zijn afgeleid, is
microsoft.eventhub.1.2003.0.0de Event Hubs RP-pakket-id.Gebruik de pakket-id die in de vorige stap is afgeleid,
Get-AzsProductSecret -PackageIdom de lijst met geheime typen op te halen die door de resourceprovider worden gebruikt. Zoek in de geretourneerdevalueverzameling het element met een waarde voor"Certificate"de"properties"."secretKind"eigenschap. Dit element bevat eigenschappen voor het certificaatgeheim van de RP. Noteer de naam die is toegewezen aan dit certificaatgeheim, dat wordt geïdentificeerd door het laatste segment van de"name"eigenschap, net boven"properties".In het volgende voorbeeld bevat de geheimenverzameling die is geretourneerd voor de Event Hubs RP een
"Certificate"geheim met de naamaseh-ssl-gateway-pfx.PS C:\WINDOWS\system32> Get-AzsProductSecret -PackageId 'microsoft.eventhub.1.2003.0.0' -AsJson VERBOSE: GET https://adminmanagement.myregion.mycompany.com/subscriptions/ze22ca96-z546-zbc6-z566-z35f68799816/providers/Microsoft.Deployment.Admin/locations/global/productPackages/microsoft.eventhub.1.2003.0.0/secrets?api-version=2019-01-01 with 0-char payload VERBOSE: Received 617-char response, StatusCode = OK { "value": [ { "id": "/subscriptions/ze22ca96-z546-zbc6-z566-z35f68799816/providers/Microsoft.Deployment.Admin/locations/global/productPackages/microsoft.eventhub.1.2003.0.0/secrets/aseh-ssl-gateway-pfx", "name": "global/microsoft.eventhub.1.2003.0.0/aseh-ssl-gateway-pfx", "type": "Microsoft.Deployment.Admin/locations/productPackages/secrets", "properties": { "secretKind": "Certificate", "description": "Event Hubs gateway SSL certificate.", "expiresAfter": "P730D", "secretDescriptor": { }, "secretState": { "status": "Deployed", "rotationStatus": "None", "expirationDate": "2022-03-31T00:16:05.3068718Z" }, "provisioningState": "Succeeded" } }, ... ] }
De geheimen draaien
Gebruik de
Set-AzsProductSecretcmdlet om uw nieuwe certificaat te importeren in Key Vault, die door het rotatieproces wordt gebruikt. Vervang de waarden van de tijdelijke aanduidingen voor variabelen dienovereenkomstig voordat u het script uitvoert:Tijdelijke aanduiding Beschrijving Voorbeeldwaarde <product-id>De product-id van de meest recente implementatie van de resourceprovider. microsoft.eventhub<installed-version>De versie van de nieuwste resourceproviderimplementatie. 1.2003.0.0<cert-secret-name>De naam waaronder het certificaatgeheim wordt opgeslagen. aseh-ssl-gateway-pfx<cert-pfx-file-path>Het pad naar het PFX-certificaatbestand. C:\dir\eh-cert-file.pfx<pfx-password>Het wachtwoord dat is toegewezen aan uw certificaat. PFX-bestand. strong@CertSecret6$productId = '<product-id>' $packageId = $productId + '.' + '<installed-version>' $certSecretName = '<cert-secret-name>' $pfxFilePath = '<cert-pfx-file-path>' $pfxPassword = ConvertTo-SecureString '<pfx-password>' -AsPlainText -Force Set-AzsProductSecret -PackageId $packageId -SecretName $certSecretName -PfxFileName $pfxFilePath -PfxPassword $pfxPassword -ForceGebruik ten slotte de
Invoke-AzsProductRotateSecretsActioncmdlet om de interne en externe geheimen te roteren:Notitie
Het duurt ongeveer 3,5 - 4 uur om het rotatieproces te voltooien.
Invoke-AzsProductRotateSecretsAction -ProductId $productIdU kunt de voortgang van geheimrotatie bewaken in de PowerShell-console of in de beheerportal door de resourceprovider in de Marketplace-service te selecteren:
Problemen oplossen
Geheimrotatie moet zonder fouten worden voltooid. Als u een van de volgende voorwaarden ondervindt in de beheerdersportal, opent u een ondersteuningsaanvraag voor hulp:
- Verificatieproblemen, inclusief problemen bij het maken van verbinding met de Event Hubs-resourceprovider.
- Kan de resourceprovider niet upgraden of configuratieparameters bewerken.
- Metrische gegevens over gebruik worden niet weergegeven.
- Er worden geen facturen gegenereerd.
- Back-ups worden niet opgetreden.
Volgende stappen
Ga naar Geheimen draaien in Azure Stack Hub voor meer informatie over het roteren van uw Azure Stack Hub-infrastructuurgeheimen.
