Dela via


Snabbstart: Etablera och aktivera en hanterad HSM med PowerShell

I den här snabbstarten skapar och aktiverar du en Hanterad HSM för Azure Key Vault (maskinvarusäkerhetsmodul) med PowerShell. Hanterad HSM är en fullständigt hanterad, högtillgänglig molntjänst med en enda klientorganisation som är standardkompatibel och som gör att du kan skydda kryptografiska nycklar för dina molnprogram med FIPS 140–3-verifierade HSM:er på nivå 3. Mer information om Managed HSM finns i Översikt.

Förutsättningar

Om du inte har någon Azure-prenumeration skapar du ett kostnadsfritt konto innan du börjar.

Skapa en resursgrupp

En resursgrupp är en logisk container där Azure-resurser distribueras och hanteras. Använd cmdleten Azure PowerShell New-AzResourceGroup för att skapa en resursgrupp med namnet myResourceGroup på platsen norgeeast .

New-AzResourceGroup -Name "myResourceGroup" -Location "norwayeast"

Hämta ditt principal-ID

För att skapa en hanterad HSM behöver du ditt Huvud-ID för Microsoft Entra. Om du vill hämta ditt ID använder du cmdleten Azure PowerShell Get-AzADUser och skickar din e-postadress till parametern "UserPrincipalName":

Get-AzADUser -UserPrincipalName "<your@email.address>"

Ditt huvud-ID returneras i formatet "xxxxxxxx-xxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxxx".

Skapa en hanterad HSM

Att skapa en hanterad HSM är en tvåstegsprocess:

  1. Provisionera en hanterad HSM-resurs.
  2. Aktivera din hanterade HSM genom att ladda ned en artefakt som kallas säkerhetsdomän.

Etablera en hanterad HSM

Använd cmdleten Azure PowerShell New-AzKeyVaultManagedHsm för att skapa en ny hanterad HSM. Du måste ange viss information:

  • Hanterat HSM-namn: En sträng på 3 till 24 tecken som endast får innehålla siffror (0–9), bokstäver (a-z, A-Z) och bindestreck (-)

    Viktigt!

    Varje hanterad HSM måste ha ett unikt namn. Ersätt <ditt unika namn på managed-hsm> med namnet på din hanterade HSM i följande exempel.

  • Resursgruppsnamn: myResourceGroup.

  • Platsen: Norge, östra.

  • Ditt huvudnamns-ID: Skicka det Microsoft Entra-huvudnamns-ID som du fick i det sista avsnittet till parametern "Administratör".

New-AzKeyVaultManagedHsm -Name "your-unique-managed-hsm-name" -ResourceGroupName "myResourceGroup" -Location "norwayeast" -Administrator "your-principal-ID" -SoftDeleteRetentionInDays "# of days to retain the managed hsm after softdelete"

Anteckning

Det kan ta några minuter att skapa kommandot. När den återkommer framgångsrikt är du redo att aktivera din HSM.

Utdata från den här cmdleten visar egenskaperna för den nyligen skapade hanterade HSM:en. Notera följande två egenskaper:

  • Namn: Det namn som du angav för Managed HSM.
  • HsmUri: I exemplet är HsmUri https://<your-unique-managed-hsm-name.managedhsm.azure.net/>. Program som använder ditt valv via dess REST-API måste använda denna URI.

I det här läget är ditt Azure-konto det enda som har behörighet att utföra några åtgärder på den nya HSM:n.

Aktivera din hanterade HSM

Alla dataplanskommandon inaktiveras tills HSM aktiveras. Du kommer inte att kunna skapa nycklar eller tilldela roller. Endast de utsedda administratörer som tilldelades under kommandot create kan aktivera HSM. Om du vill aktivera HSM måste du ladda ned säkerhetsdomänen.

För att aktivera din HSM behöver du:

  • Minst tre RSA-nyckelpar (högst 10)
  • Det minsta antalet nycklar som krävs för att dekryptera säkerhetsdomänen (kallas kvorum)

Du skickar minst tre (högst 10) offentliga RSA-nycklar till HSM. HSM krypterar säkerhetsdomänen med dessa nycklar och skickar tillbaka den. När nedladdningen av säkerhetsdomänen har slutförts är din HSM redo att användas. Du måste också ange kvorumet, vilket är det minsta antal privata nycklar som krävs för att dekryptera säkerhetsdomänen.

I följande exempel visas hur du använder openssl för att generera tre självsignerade certifikat:

openssl req -newkey rsa:2048 -nodes -keyout cert_0.key -x509 -days 365 -out cert_0.cer
openssl req -newkey rsa:2048 -nodes -keyout cert_1.key -x509 -days 365 -out cert_1.cer
openssl req -newkey rsa:2048 -nodes -keyout cert_2.key -x509 -days 365 -out cert_2.cer

Certifikatets förfallodatum påverkar inte säkerhetsdomänåtgärder– även ett "utgånget" certifikat kan fortfarande användas för att återställa säkerhetsdomänen.

Viktigt!

Dessa privata RSA-nycklar är roten till förtroende för din hanterade HSM. För produktionsmiljöer genererar du dessa nycklar med hjälp av ett luftgapigt system eller lokal HSM och lagrar dem på ett säkert sätt. Mer information finns i Metodtips för säkerhetsdomäner .

Tips/Råd

OpenSSL för Windows är tillgängligt från OpenSSL-webbplatsen.

Använd cmdleten Azure PowerShell Export-AzKeyVaultSecurityDomain för att ladda ned säkerhetsdomänen och aktivera din hanterade HSM. I följande exempel används tre RSA-nyckelpar (endast offentliga nycklar behövs för det här kommandot) och kvorumet anges till två.

Export-AzKeyVaultSecurityDomain -Name "<your-unique-managed-hsm-name>" -Certificates "cert_0.cer", "cert_1.cer", "cert_2.cer" -OutputPath "MHSMsd.ps.json" -Quorum 2

Lagra säkerhetsdomänfilen och RSA-nyckelparen på ett säkert sätt. Du behöver dem för katastrofåterställning eller för att skapa en annan hanterad HSM som delar samma säkerhetsdomän, vilket gör att de två kan dela nycklar.

När du har laddat ned säkerhetsdomänen är din HSM i ett aktivt tillstånd och redo att användas.

Rensa resurser

De andra snabbstarterna och självstudierna i den här samlingen bygger på den här snabbstarten. Om du planerar att fortsätta med andra snabbstarter och självstudier kan du lämna kvar de här resurserna.

När den inte längre behövs kan du använda cmdleten Azure PowerShell Remove-AzResourceGroup för att ta bort resursgruppen och alla relaterade resurser.

Remove-AzResourceGroup -Name "myResourceGroup"

Varning

Om du tar bort resursgruppen försätts den hanterade HSM i ett mjukt borttaget tillstånd. Managed HSM fortsätter att faktureras tills den rensas. Se Skydd mot rensning av hanterad HSM och mjuk borttagning

Nästa steg

I den här snabbstarten skapade och aktiverade du en hanterad HSM. Om du vill veta mer om Managed HSM och hur du integrerar den med dina program kan du fortsätta med följande artiklar: