Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Azure Key Vault är en molntjänst som tillhandahåller säker lagring och hantering av kryptografiska nycklar, hemligheter och certifikat. Den här guiden hjälper utvecklare att integrera Key Vault i sina program.
Översikt
Azure Key Vault gör att du kan:
- Säker lagring: Skydda nycklar, hemligheter och certifikat utan att skriva anpassad säkerhetskod.
- Förenklad nyckelhantering: Centralisera kryptografiska åtgärder och nyckellivscykelhantering.
- Kundägda nycklar: Tillåt kunder att hantera sina egna nycklar medan du fokuserar på viktiga programfunktioner.
- Hantering av externa nycklar: Använd nycklar för signering och kryptering samtidigt som de hålls externa för ditt program.
Allmän information om Azure Key Vault finns i Om Azure Key Vault.
Utvecklarscenarier
Vanliga utvecklaruppgifter med Key Vault är:
- Lagra och hämta hemligheter: Hantera anslutningssträngar, lösenord, API-nycklar och SAS-token på ett säkert sätt. Mer information finns i Om hemligheter.
- Använd nycklar för kryptering och signering: Utför kryptografiska åtgärder utan att exponera nyckelmaterial för ditt program. Mer information finns i Om nycklar.
- Hantera certifikat: Automatisera etablering, förnyelse och distribution av certifikat för SSL/TLS. Mer information finns i Om certifikat.
Offentliga förhandsversioner
Microsoft släpper regelbundet offentliga förhandsversioner av nya Key Vault funktioner. Om du vill prova förhandsgranskningsfunktioner och ge feedback kontaktar du teamet på azurekeyvault@microsoft.com. Information om de senaste funktionerna och uppdateringarna finns i Vad är nytt i Azure Key Vault.
Skapa och hantera nyckelvalv
Key Vault använder en tvåplansåtkomstmodell:
- Control-plan: Hanterar själva Key Vault resursen (skapa, ta bort, uppdatera egenskaper, tilldela åtkomstprinciper). Åtgärder hanteras via Azure Resource Manager. För information om åtkomstkontroll, se Tilldela en Key Vault-åtkomstprincip.
- Dataplan: Hanterar data som lagras i Key Vault (nycklar, hemligheter, certifikat). Åtkomsten styrs via Azure RBAC med Key Vault.
Använd den fördefinierade rollen Key Vault Contributor för att ge hanteringsåtkomst till Key Vault resurser. Mer information om autentisering och auktorisering finns i Authentication i Azure Key Vault.
Nätverkssäkerhet
Minska nätverksexponeringen genom att konfigurera privata slutpunkter, brandväggar eller tjänstslutpunkter. Omfattande vägledning för nätverkssäkerhet, inklusive konfigurationsalternativ från de flesta till minst restriktiva, finns i Säkerhet din Azure Key Vault: Nätverkssäkerhet och Konfigurera Azure Key Vault nätverksinställningar.
API:er och SDK:er för hantering av nyckelvalv
I följande tabell visas SDK:er och snabbstartsguider för att hantera Key Vault-resurser (kontrollplansåtgärder). De senaste versionerna och installationsanvisningarna finns i Klientbibliotek.
| Azure CLI | PowerShell | REST-API | Resurshanterare | .NET | Python | Java | JavaScript |
|---|---|---|---|---|---|---|---|
|
Referens Snabbstart |
Referens Snabbstart |
Referens |
Referens Snabbstart |
Referens | Referens | Referens | Referens |
Autentisera mot Key Vault i kod
Key Vault använder Microsoft Entra-autentisering, vilket kräver en Microsoft Entra-säkerhetsprincip för att bevilja åtkomst. Ett Microsoft Entra säkerhetsobjekt kan vara en användare, ett tjänstehuvudnamn för en applikation, en hanterad identitet för Azure-resurser eller en grupp av någon av dessa typer.
Metodtips för autentisering
För program som distribueras till Azure använder du hanterade identiteter för att eliminera behovet av att lagra autentiseringsuppgifter i kod. Detaljerade rekommendationer för autentisering och säkerhetsprinciper för olika miljöer (produktion, utveckling, lokal) finns i Autentisering i Azure Key Vault och Skydda din Azure Key Vault.
Azure identitetsklientbibliotek
Föregående autentiseringsscenarier stöds av klientbiblioteket Azure Identity och integreras med Key Vault SDK:er. Du kan använda klientbiblioteket Azure identitet mellan miljöer och plattformar utan att ändra koden. Biblioteket hämtar automatiskt autentiseringstoken från användare som är inloggade på Azure användare via Azure CLI, Visual Studio, Visual Studio Code och andra sätt.
Mer information om klientbiblioteket för Azure Identity finns i:
| .NET | Python | Java | JavaScript |
|---|---|---|---|
| Azure Identity SDK .NET | Azure Identity SDK Python | Azure Identity SDK Java | Azure Identity SDK JavaScript |
Anmärkning
Vi rekommenderar App authentication library för Key Vault .NET SDK version 3, men det är nu inaktuellt. Om du vill migrera till Key Vault .NET SDK version 4 följer du AppAuthentication till Azure. Vägledning för identitetsmigrering.
Självstudier om hur du autentiserar mot Key Vault i applikationer finns här:
- Använd Azure Key Vault med en virtuell dator i .NET
- Använd Azure Key Vault med en virtuell dator i Python
- Använd en hanterad identitet för att ansluta Key Vault till en Azure webbapp i .NET
Hantera nycklar, certifikat och hemligheter
Anmärkning
SDK:er för .NET, Python, Java, JavaScript, PowerShell och Azure CLI ingår i Key Vault funktionsutgivningsprocessen via offentlig förhandsversion och allmän tillgänglighet med stöd för Key Vault serviceteam. Andra SDK-klienter för Key Vault är tillgängliga, men de skapas och stöds av enskilda SDK-team över GitHub och släpps i teamschemat. De senaste SDK-versionerna och installationspaketen finns i Klientbibliotek.
Dataplanet styr åtkomsten till nycklar, certifikat och hemligheter. Du kan använda Azure RBAC med Key Vault för åtkomstkontroll via dataplanet.
API:er och SDK:er för nycklar
I följande tabell visas SDK:er och snabbstarter för att arbeta med nycklar (dataplansåtgärder). Mer information om nycklar finns i Om nycklar.
| Azure CLI | PowerShell | REST-API | Resurshanterare | .NET | Python | Java | JavaScript |
|---|---|---|---|---|---|---|---|
|
Referens Snabbstart |
Referens Snabbstart |
Referens |
Referens Snabbstart |
Referens Snabbstart |
Referens Snabbstart |
Referens Snabbstart |
Referens Snabbstart |
Andra bibliotek
Kryptografiklient för Key Vault och hanterad HSM
Den här modulen tillhandahåller en kryptografiklient för klientmodulen Azure Key Vault Keys för Go.
Anmärkning
Det här projektet stöds inte av Azure SDKs-teamet, men överensstämmer med kryptografiklienterna på andra språk som stöds.
| Språk | Hänvisning |
|---|---|
| Sätt igång | Referens |
API:er och SDK:er för certifikat
I följande tabell visas SDK:er och snabbstarter för att arbeta med certifikat (dataplansåtgärder). Mer information om certifikat finns i Om certifikat.
| Azure CLI | PowerShell | REST-API | Resurshanterare | .NET | Python | Java | JavaScript |
|---|---|---|---|---|---|---|---|
|
Referens Snabbstart |
Referens Snabbstart |
Referens | Inte tillgänglig |
Referens Snabbstart |
Referens Snabbstart |
Referens Snabbstart |
Referens Snabbstart |
API:er och SDK:er för hemligheter
I följande tabell visas SDK:er och snabbstarter för att arbeta med hemligheter (dataplansåtgärder). Mer information om hemligheter finns i Om hemligheter.
| Azure CLI | PowerShell | REST-API | Resurshanterare | .NET | Python | Java | JavaScript |
|---|---|---|---|---|---|---|---|
|
Referens Snabbstart |
Referens Snabbstart |
Referens |
Referens Snabbstart |
Referens Snabbstart |
Referens Snabbstart |
Referens Snabbstart |
Referens Snabbstart |
Användning av hemligheter
Använd Azure Key Vault om du bara vill lagra hemligheter för ditt program. Exempel på hemligheter som ska lagras i Key Vault är:
- Hemligheter för klientprogram
- Anslutningssträngar
- Lösenord
- Nycklar för delad åtkomst
- SSH-nycklar
All hemlighetsrelaterad information, såsom användarnamn och program-ID:t, kan lagras som en tagg i en hemlighet. För andra inställningar för känslig konfiguration bör du använda Azure App Configuration.
Installationspaket och källkod finns i Klientbibliotek.
Använda Key Vault i program
För att dra nytta av de senaste funktionerna i Key Vault rekommenderar vi att du använder tillgängliga Key Vault SDK:er för att använda hemligheter, certifikat och nycklar i ditt program. De Key Vault SDK:erna och REST-API:et uppdateras när nya funktioner släpps för produkten och de följer metodtips och riktlinjer.
För grundläggande scenarier finns det andra bibliotek och integreringslösningar för förenklad användning, med stöd från Microsoft partner eller community med öppen källkod.
För certifikat kan du använda:
- Tillägget för virtuell dator (VM) i Key Vault, som tillhandahåller automatisk uppdatering av certifikat som lagras i ett Azure-nyckelvalv. Mer information finns i:
- Azure App Service integrering, som kan importera och automatiskt uppdatera certifikat från Key Vault. Mer information finns i Importera ett certifikat från Key Vault.
För hemligheter kan du använda:
- Key Vault-sekretess med App Service-programinställningar. Mer information finns i Använd Key Vault referenser för App Service och Azure Functions.
- Key Vault-referenser med Azure App Configuration för att effektivisera programmets åtkomst till konfiguration och sekretess. Mer information finns i Använd Key Vault referenser i Azure App Configuration.
Kodexempel
Fullständiga exempel på hur du använder Key Vault med program finns i Azure Key Vault kodexempel.
Uppgiftsspecifik vägledning
Följande artiklar och scenarier ger uppgiftsspecifik vägledning för att arbeta med Azure Key Vault:
- För att få åtkomst till ett nyckelvalv måste klientprogrammet kunna komma åt flera slutpunkter för olika funktioner. Se Åtkomst till Key Vault bakom en brandvägg.
- Ett molnprogram som körs på en Azure virtuell dator behöver ett certifikat. Hur hämtar du certifikatet till den här virtuella datorn? Se Key Vault tillägg för virtuella datorer för Windows eller Key Vault tillägg för virtuella datorer för Linux.
- Information om hur du tilldelar en åtkomstprincip med hjälp av Azure CLI, PowerShell eller Azure-portalen finns i Tilldela en Key Vault åtkomstprincip.
- Vägledning om användning och livscykel för ett nyckelvalv och olika nyckelvalvobjekt med mjuk borttagning aktiverat finns i Azure Key Vault återställningshantering med skydd mot mjuk borttagning och rensning.
- När du behöver skicka ett säkert värde (till exempel ett lösenord) som en parameter under distributionen kan du lagra det värdet som en hemlighet i ett nyckelvalv och referera till värdet i andra Resource Manager mallar. Se Använd Azure Key Vault för att skicka säkra parametervärden under distributionen.
Integrering med Key Vault
Följande tjänster och scenarier använder eller integrerar med Key Vault:
- Kryptering i vila möjliggör att data kodas (krypteras) när det sparas. Datakrypteringsnycklar krypteras ofta med en nyckelkrypteringsnyckel i Azure Key Vault för att ytterligare begränsa åtkomsten.
- Azure Information Protection kan du hantera din egen klientnyckel. I stället för att till exempel Microsoft hantera din klientnyckel (standard) kan du hantera din egen klientnyckel för att följa specifika regler som gäller för din organisation. Att hantera din egen klientnyckel kallas även BYOK (Bring Your Own Key).
- Azure Private Link ger dig åtkomst till Azure-tjänster (till exempel Azure Key Vault, Azure Storage och Azure Cosmos DB) och Azure-värdbaserade kund- och partnertjänster via en privat slutpunkt i ditt virtuella nätverk.
- Key Vault integrering med Azure Event Grid låter användare meddelas när statusen för en hemlighet som lagras i Key Vault har ändrats. Du kan distribuera nya versioner av hemligheter till program eller rotera hemligheter som är nära att förfalla för att förhindra avbrott.
- Skydda dina Azure DevOps hemligheter mot oönskad åtkomst i Key Vault.
- Använd hemligheter som lagras i Key Vault för att ansluta till Azure Storage från Azure Databricks.
- Konfigurera och kör Azure Key Vault-providern för CSI-drivrutinen Secrets Store på Kubernetes.
Haveriberedskap och affärskontinuitet
Key Vault ger inbyggd haveriberedskap med automatisk regional replikering. För produktionsdistributioner aktiverar du skydd mot mjuk borttagning och rensning och implementerar regelbundna säkerhetskopior. Mer information finns i Azure Key Vault tillgänglighet och redundans, Azure Key Vault återställningshantering och Azure Key Vault säkerhetskopiering.
Prestanda och skalbarhet
När du utvecklar program som använder Key Vault bör du överväga följande metodtips för prestanda och skalbarhet:
- Service-gränser: Key Vault har tjänstgränser för transaktioner per valv per region. Om du överskrider dessa gränser resulterar det i begränsning. Mer information finns i Azure Key Vault tjänstbegränsningar.
- Vägledning för strypning: Implementera återförsökslogik med exponentiell backoff för att hantera svar på strypning. För mer information, se vägledning om begränsning av Azure Key Vault.
- Caching: Cachea hemligheter och certifikat i ditt program för att minska anrop till Key Vault och förbättra prestanda.
- Anslutningshantering: Återanvänd HTTP-anslutningar till Key Vault när det är möjligt för att minska svarstiden och förbättra prestanda.
Övervakning och loggning
Aktivera loggning och övervakning för säkerhet, efterlevnad och felsökning. Konfigurera diagnostikinställningar, Event Grid-meddelanden och aviseringar för kritiska händelser. För detaljerad vägledning, se Monitor Azure Key Vault, loggning av Azure Key Vault, Övervaka Key Vault med Azure Event Grid och Skydda din Azure Key Vault: Loggning och hotidentifiering.
Vanliga parametrar och begärandemönster
När du arbetar med Key Vault REST API är det bra att förstå vanliga parametrar och mönster för begäran/svar:
- API-versioner: Key Vault använder versions-API:er. Ange alltid API-versionen i dina begäranden.
- Autentiseringsbegäranden: Förstå hur autentiseringstoken hämtas och används, inklusive vanliga begärandehuvuden och svarsformat. Mer information finns i Autentisering, begäranden och svar.
- Felkoder: Bekanta dig med vanliga REST API-felkoder för att hantera fel på ett korrekt sätt. Mer information finns i Azure Key Vault REST API-felkoder.
Felsökning
För hjälp med att lösa vanliga problem:
- Nekad åtkomst: Verifiera dina autentiseringsuppgifter och att säkerhetsobjektet har nödvändiga behörigheter via RBAC-tilldelningar. Se Azure RBAC för Key Vault dataplanoperationer.
- Nätverksanslutning: Om du kommer åt Key Vault bakom en brandvägg kontrollerar du att nödvändiga slutpunkter är tillgängliga. Se Åtkomst till Key Vault bakom en brandvägg.
- Begränsning: Om du tar emot svar på 429 (för många begäranden) implementerar du exponentiell backoff. Se Azure Key Vault användningsbegränsningar.
Metodtips för säkerhet
Omfattande säkerhetsvägledning, inklusive identitets- och åtkomsthantering, dataskydd, efterlevnad, styrning och säkerhetskopieringsstrategier, finns i Sekure din Azure Key Vault.
Ytterligare resurser
Key Vault begrepp
- Azure Key Vault grundläggande begrepp – Grundläggande begrepp för att arbeta med Key Vault.
- Azure Key Vault översikt över mjuk borttagning – Återställning av borttagna objekt.
- Azure Key Vault begränsningsvägledning – Grundläggande begrepp och metod för din app.
- Azure Key Vault säkerhetsvärldar och geografiska gränser – Regionala relationer och säkerhetsrelationer.
- Azure Key Vault tjänstbegränsningar – Transaktionsbegränsningar och andra tjänstbegränsningar.
Hantering och drift
- Monitor Azure Key Vault – Konfigurera övervakning och diagnostik.
- Azure Key Vault loggning – Aktivera och analysera Key Vault loggar.
Community och support
Microsoft Q& A – Ställ frågor och få svar från communityn.Stack Overflow for Key Vault - Teknisk Q&A från utvecklare.- Azure Feedback – Skicka funktionsförfrågningar och feedback.