Snabbstart: Etablera och aktivera en hanterad HSM med Azure CLI
I den här snabbstarten skapar och aktiverar du en Hanterad HSM för Azure Key Vault (maskinvarusäkerhetsmodul) med Azure CLI. Managed 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-2 Level 3-verifierade HSM:er. Mer information om Managed HSM finns i Översikt.
Förutsättningar
För att slutföra stegen i den här artikeln måste du ha:
- En prenumeration till Microsoft Azure. Om du inte har en kan du registrera dig för en kostnadsfri utvärderingsversion.
- Azure CLI version 2.25.0 eller senare. Kör
az --version
för att hitta versionen. Om du behöver installera eller uppgradera kan du läsa informationen i Installera Azure CLI.
Azure Cloud Shell
Azure är värd för Azure Cloud Shell, en interaktiv gränssnittsmiljö som du kan använda via webbläsaren. Du kan använda antingen Bash eller PowerShell med Cloud Shell för att arbeta med Azure-tjänster. Du kan använda förinstallerade Cloud Shell-kommandon för att köra koden i den här artikeln, utan att behöva installera något i din lokala miljö.
Så här startar du Azure Cloud Shell:
Alternativ | Exempel/länk |
---|---|
Välj Prova i det övre högra hörnet i en kod eller ett kommandoblock. Om du väljer Prova kopieras inte koden eller kommandot automatiskt till Cloud Shell. | |
Gå till https://shell.azure.com eller Välj knappen Starta Cloud Shell för att öppna Cloud Shell i webbläsaren. | |
Välj knappen Cloud Shell på menyn längst upp till höger i Azure-portalen. |
Så här använder du Azure Cloud Shell:
Starta Cloud Shell.
Välj knappen Kopiera i ett kodblock (eller kommandoblock) för att kopiera koden eller kommandot.
Klistra in koden eller kommandot i Cloud Shell-sessionen genom att välja Ctrl+Skift+V i Windows och Linux, eller genom att välja Cmd+Shift+V på macOS.
Välj Retur för att köra koden eller kommandot.
Logga in på Azure
Om du vill logga in på Azure med hjälp av CLI kan du skriva:
az login
Skapa en resursgrupp
En resursgrupp är en logisk container där Azure-resurser distribueras och hanteras. I följande exempel skapas en resursgrupp med namnet ContosoResourceGroup på platsen eastus2 .
az group create --name "ContosoResourceGroup" --location eastus2
Skapa en hanterad HSM
Att skapa en hanterad HSM är en tvåstegsprocess:
- Etablera en hanterad HSM-resurs.
- Aktivera din hanterade HSM genom att ladda ned en artefakt som kallas säkerhetsdomänen.
Etablera en hanterad HSM
az keyvault create
Använd kommandot för att skapa en hanterad HSM. Det här skriptet har tre obligatoriska parametrar: ett resursgruppsnamn, ett HSM-namn och den geografiska platsen.
Du måste ange följande indata för att skapa en hanterad HSM-resurs:
- En resursgrupp där den placeras i din prenumeration.
- Azure-plats.
- En lista över inledande administratörer.
I följande exempel skapas en HSM med namnet ContosoMHSM, i resursgruppen ContosoResourceGroup, som finns på platsen USA, östra 2 , med den aktuella inloggade användaren som den enda administratören, med kvarhållningsperiod på 7 dagar för mjuk borttagning. Managed HSM fortsätter att faktureras tills den rensas under en mjuk borttagningsperiod. Mer information finns i Hanterad HSM-mjuk borttagning och rensningsskydd och läs mer om mjuk borttagning av hanterad HSM.
oid=$(az ad signed-in-user show --query id -o tsv)
az keyvault create --hsm-name "ContosoMHSM" --resource-group "ContosoResourceGroup" --location "eastus2" --administrators $oid --retention-days 7
Kommentar
Om du använder hanterade identiteter som inledande administratörer för din hanterade HSM bör du ange OID/PrincipalID för hanterade identiteter efter "--administratörer" och inte ClientID.
Kommentar
Det kan ta några minuter att skapa kommandot. När den har returnerats är du redo att aktivera din HSM.
Varning
Hanterade HSM-instanser anses alltid vara i bruk. Om du väljer att aktivera rensningsskydd med hjälp av --enable-purge-protection
flaggan debiteras du för hela kvarhållningsperioden.
Utdata från det här kommandot visar egenskaperna för den hanterade HSM som du har skapat. De två viktigaste egenskaperna är:
- name: I exemplet är namnet ContosoMHSM. Du använder det här namnet för andra kommandon.
- hsmUri: I exemplet är URI:n "https://contosohsm.managedhsm.azure.net." Program som använder din HSM via rest-API:et måste använda den här URI:n.
Ditt Azure-konto har nu behörighet att utföra alla åtgärder på denna hanterade HSM. Än så länge har ingen annan behörighet.
Aktivera din hanterade HSM
Alla dataplanskommandon inaktiveras tills HSM aktiveras. Du kan till exempel inte 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:
- För att tillhandahålla minst tre RSA-nyckelpar (upp till högst 10)
- Ange det minsta antal nycklar som krävs för att dekryptera säkerhetsdomänen (kallas kvorum)
För att aktivera HSM skickar du 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 kvorum, 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
Kommentar
Även om certifikatet har "upphört att gälla" kan det fortfarande användas för att återställa säkerhetsdomänen.
Viktigt!
Skapa och lagra RSA-nyckelparen och säkerhetsdomänfilen som genereras i det här steget på ett säkert sätt.
az keyvault security-domain download
Använd kommandot 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å.
az keyvault security-domain download --hsm-name ContosoMHSM --sd-wrapping-keys ./certs/cert_0.cer ./certs/cert_1.cer ./certs/cert_2.cer --sd-quorum 2 --security-domain-file ContosoMHSM-SD.json
Lagra säkerhetsdomänfilen och RSA-nyckelparen på ett säkert sätt. Du behöver dem för haveriberedskap eller för att skapa en annan hanterad HSM som delar samma säkerhetsdomän så att de två kan dela nycklar.
När du har laddat ned säkerhetsdomänen är din HSM i 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 efterföljande snabbstarter och självstudier kan du lämna kvar de här resurserna.
När du inte behöver resursgruppen längre kan du använda kommandot az group delete till att ta bort resursgruppen och alla relaterade resurser. Så här tar du bort resurserna:
az group delete --name ContosoResourceGroup
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 etablerade du en hanterad HSM och aktiverade den. Om du vill veta mer om Managed HSM och hur du integrerar den med dina program kan du fortsätta med de här artiklarna.
- Läs en översikt över Hanterad HSM
- Lär dig mer om att hantera nycklar i en hanterad HSM
- Läs mer om rollhantering för en hanterad HSM
- Granska metodtips för hanterad HSM