Sdílet prostřednictvím


Obměna tajných kódů pro službu Event Hubs ve službě Azure Stack Hub

V tomto článku se dozvíte, jak obměňovat tajné kódy používané poskytovatelem prostředků služby Event Hubs.

Přehled a požadavky

Poznámka

Obměna tajných kódů pro zprostředkovatele prostředků s přidanou hodnotou (RPS) se v současné době podporuje jenom prostřednictvím PowerShellu. Tajemství pro RPs s přidanou hodnotou je nutné proaktivně obměňovat pravidelně, protože se momentálně nevytvářejí administrativní upozornění.

Podobně jako infrastruktura služby Azure Stack Hub používají poskytovatelé prostředků s přidanou hodnotou interní i externí tajné kódy. Tajné kódy můžou mít více forem, včetně hesel a šifrovacích klíčů spravovaných certifikáty X509. Jako operátor zodpovídáte za:

  • Poskytuje aktualizované externí tajné kódy, například nový certifikát TLS používaný k zabezpečení koncových bodů poskytovatele prostředků.
  • Pravidelná správa a obměna tajemství poskytovatele zdrojů.

Při přípravě na proces obměně:

  1. Před získáním nebo obnovením certifikátu X509 si pečlivě prohlédněte požadavky na infrastrukturu veřejných klíčů služby Azure Stack Hub a zjistěte důležité informace o předpokladech, včetně detailů o požadovaném formátu PFX. Projděte si také požadavky uvedené v části Volitelné certifikáty PaaS, pro vašeho konkrétního poskytovatele prostředků s přidanou hodnotou.

  2. Pokud jste to ještě neudělali, před pokračováním nainstalujte modul Az PowerShellu pro Azure Stack Hub. Pro obměnu tajných kódů služby Azure Stack Hub se vyžaduje verze 2.0.2-Preview nebo novější. Další informace najdete v tématu Migrace z AzureRM na Az Azure PowerShellu ve službě Azure Stack Hub.

Příprava nového certifikátu TLS

Dále vytvořte nebo obnovte certifikát TLS pro zabezpečení koncových bodů poskytovatele prostředků s přidanou hodnotou:

  1. Proveďte kroky v části Generujte žádosti o podepsání certifikátů (CSR) pro obnovení certifikátu pro vašeho poskytovatele prostředků. Tady použijete nástroj Azure Stack Hub Readiness Checker k vytvoření CSR. Nezapomeňte pro svého poskytovatele prostředků spustit správný cmdlet v kroku "Generování žádostí o certifikáty pro jiné služby Azure Stack Hub". Například New-AzsHubEventHubsCertificateSigningRequest se používá pro službu Event Hubs. Po dokončení odešlete vygenerovaný . Soubor REQ do certifikační autority (CA) pro nový certifikát.

  2. Jakmile od certifikační autority obdržíte soubor certifikátu, proveďte kroky v části Příprava certifikátů na nasazení nebo obměnu. Znovu použijete nástroj Readiness Checker ke zpracování souboru vráceného z certifikační autority.

  3. Nakonec proveďte kroky v ověření certifikátů PKI služby Azure Stack Hub. Nástroj Readiness Checker použijete ještě jednou k provádění ověřovacích testů na novém certifikátu.

Rotace tajemství

Nakonec určete nejnovější vlastnosti nasazení poskytovatele prostředků a použijte je k dokončení procesu rotace tajných klíčů.

Určení vlastností nasazení

Poskytovatelé prostředků se nasazují do prostředí Azure Stack Hub jako verzovaný balíček produktu. Balíčky jsou přiřazeny jedinečné ID balíčku ve formátu '<product-id>.<installed-version>'. Kde <product-id> je jedinečný řetězec představující poskytovatele prostředků a <installed-version> představuje konkrétní verzi. Tajné kódy přidružené ke každému balíčku se ukládají ve službě Azure Stack Hub Key Vault.

Otevřete konzolu PowerShellu se zvýšenými oprávněními a pomocí následujících kroků určete vlastnosti potřebné k obměně tajných kódů poskytovatele prostředků:

  1. Přihlaste se k prostředí služby Azure Stack Hub pomocí přihlašovacích údajů operátora. Viz Připojení ke službě Azure Stack Hub pomocí PowerShell pro přihlášení pomocí PowerShellu. Nezapomeňte použít rutiny Az PowerShellu (místo AzureRM) a nahradit všechny zástupné hodnoty, jako jsou adresy URL koncových bodů a název tenanta adresáře.

  2. Spusťte cmdlet Get-AzsProductDeployment a načtěte seznam aktuálních nasazení poskytovatelů prostředků. Vrácená kolekce "value" obsahuje prvek pro každého nasazeného poskytovatele prostředků. Vyhledejte poskytovatele prostředků, který vás zajímá, a poznamenejte si hodnoty těchto vlastností:

    • "name" – obsahuje ID produktu poskytovatele prostředků ve druhém segmentu hodnoty.
    • "properties"."deployment"."version" – obsahuje aktuálně nasazené číslo verze.

    V následujícím příkladu si všimněte nasazení Event Hubs RP v prvním prvku kolekce, který má ID produktu "microsoft.eventhub"a verzi "1.2003.0.0":

    PS C:\WINDOWS\system32> Get-AzsProductDeployment -AsJson
    VERBOSE: GET https://adminmanagement.myregion.mycompany.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/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/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Deployment.Admin/locations/global/productDeployments/microsoft.eventhub",
                          "name":  "global/microsoft.eventhub",
                          "type":  "Microsoft.Deployment.Admin/locations/productDeployments",
                          "properties":  {
                                             "status":  "DeploymentSucceeded",
                                             "subscriptionId":  "bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f",
                                             "deployment":  {
                                                                "version":  "1.2003.0.0",
                                                                "actionPlanInstanceResourceId":"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Deployment.Admin/locations/global/actionplans/cccc2c2c-dd3d-ee4e-ff5f-aaaaaa6a6a6a",
                                                                "parameters":  {
    
                                                                               }
                                                            },
                                             "lastSuccessfulDeployment":  {
                                                                              "version":  "1.2003.0.0",
                                                                              "actionPlanInstanceResourceId":"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/providers/Microsoft.Deployment.Admin/locations/global/actionplans/cccc2c2c-dd3d-ee4e-ff5f-aaaaaa6a6a6a",
                                                                              "parameters":  {
    
                                                                                             }
                                                                          },
                                             "provisioningState":  "Succeeded"
                                         }
                      },
                      {
                      ...
                      }
                  ]
    }
    
  3. Sestavte ID balíčku poskytovatele prostředků zřetězením ID produktu poskytovatele prostředků a verze. Například při použití hodnot odvozených v předchozím kroku, ID balíčku Event Hubs RP je microsoft.eventhub.1.2003.0.0.

  4. Pomocí ID balíčku odvozeného v předchozím kroku spusťte Get-AzsProductSecret -PackageId a načtěte seznam typů tajných kódů používaných poskytovatelem prostředků. Ve vrácené kolekci value vyhledejte prvek obsahující hodnotu "Certificate" pro vlastnost "properties"."secretKind". Tento element obsahuje vlastnosti tajného klíče certifikátu pro RP. Poznamenejte si název přiřazený tomuto tajnému kódu certifikátu, který je identifikován posledním segmentem vlastnosti "name", těsně nad "properties".

    V následujícím příkladu kolekce tajných kódů, která byla vrácena pro Event Hubs RP, obsahuje tajný kód "Certificate" s názvem aseh-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/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/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/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/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"
                                        }
                        },
                        ...
                    ]
    }
    

Obměna tajných kódů

  1. Pomocí rutiny Set-AzsProductSecret naimportujte nový certifikát do služby Key Vault, který bude používán procesem obměny. Před spuštěním skriptu nahraďte zástupné hodnoty proměnné odpovídajícím způsobem:

    Zástupný text Popis Příklad hodnoty
    <product-id> ID produktu nejnovějšího nasazení poskytovatele prostředků. microsoft.eventhub
    <installed-version> Verze nejnovějšího nasazení poskytovatele prostředků 1.2003.0.0
    <cert-secret-name> Název, pod kterým je uložený tajný klíč certifikátu. aseh-ssl-gateway-pfx
    <cert-pfx-file-path> Cesta k PFX souboru certifikátu. C:\dir\eh-cert-file.pfx
    <pfx-password> Heslo přiřazené k vašemu certifikátu . PFX soubor. 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 -Force
    
  2. Nakonec pomocí rutiny Invoke-AzsProductRotateSecretsAction obměňte interní a externí tajné kódy:

    Poznámka

    Na dokončení procesu rotace trvá přibližně 3,5 až 4 hodiny.

    Invoke-AzsProductRotateSecretsAction -ProductId $productId
    

    Průběh rotace tajných kódů můžete sledovat v konzoli PowerShellu nebo v administračním portálu, a to výběrem poskytovatele prostředků ve službě Marketplace.

    průběh rotace tajného kódu

Řešení problémů

Obměně tajných kódů by se měla úspěšně dokončit bez chyb. Pokud na portálu pro správu narazíte na některé z následujících podmínek, otevřete žádost o podporu o pomoc:

  • Problémy s ověřováním, včetně problémů s připojením k poskytovateli prostředků služby Event Hubs
  • Nejde upgradovat poskytovatele prostředků nebo upravit parametry konfigurace.
  • Metriky využití se nezobrazují.
  • Faktury se negenerují.
  • Zálohy neprobíhají.

Další kroky

Podrobnosti o obměně tajných kódů infrastruktury služby Azure Stack Hub najdete v tématu Obměna tajných kódů ve službě Azure Stack Hub.