Utvecklarguide för Azure 密钥保管库

Med Azure 密钥保管库 kan du på ett säkert sätt komma åt känslig information inifrån dina program:

  • Nycklar, hemligheter och certifikat skyddas utan att du behöver skriva koden själv, och du kan enkelt använda dem från dina program.
  • Du gör det möjligt för kunder att äga och hantera sina egna nycklar, hemligheter och certifikat så att du kan koncentrera dig på att tillhandahålla grundläggande programvarufunktioner. På så sätt äger inte dina program ansvaret eller det potentiella ansvaret för dina kunders klientnycklar, hemligheter och certifikat.
  • Ditt program kan använda nycklar för signering och kryptering, men ändå hålla nyckelhanteringen extern från ditt program. Mer information finns i Om nycklar.
  • Du kan hantera autentiseringsuppgifter som lösenord, åtkomstnycklar och SAS-token genom att lagra dem i 密钥保管库 som hemligheter. Mer information finns i Om hemligheter.
  • Hantera certifikat. Mer information finns i Om certifikat.

Allmän information om Azure 密钥保管库 finns i Om Azure 密钥保管库.

Allmänt tillgängliga förhandsversioner

Med jämna mellanrum släpper vi en offentlig förhandsversion av en ny 密钥保管库 funktion. Prova funktioner för offentlig förhandsversion och berätta vad du tycker via azurekeyvault@microsoft.com, vår e-postadress för feedback.

Skapa och hantera nyckelvalv

Precis som med andra Azure-tjänster hanteras 密钥保管库 via Azure Resource Manager. Azure Resource Manager är Azures tjänst för distribution och hantering. Du kan använda den för att skapa, uppdatera och ta bort resurser i ditt Azure-konto.

Rollbaserad åtkomstkontroll i Azure (RBAC) styr åtkomsten till hanteringsskiktet, även kallat hanteringsplanet. Du använder hanteringsplanet i 密钥保管库 för att skapa och hantera nyckelvalv och deras attribut, inklusive åtkomstprinciper. Du använder dataplanet för att hantera nycklar, certifikat och hemligheter.

Du kan använda den fördefinierade rollen 密钥保管库 deltagare för att bevilja hanteringsåtkomst till 密钥保管库.

API:er och SDK:er för hantering av nyckelvalv

Azure CLI PowerShell REST-API Resource Manager .NET Python Java JavaScript
Referens
Snabbstart
Referens
Snabbstart
Referens Referens
Snabbstart
Referens Referens Referens Referens

Installationspaket och källkod finns i Klientbibliotek.

Autentisera för att 密钥保管库 i kod

密钥保管库 använder Azure Active Directory-autentisering (Azure AD), vilket kräver ett Azure AD säkerhetsobjekt för att bevilja åtkomst. Ett Azure AD säkerhetsobjekt kan vara en användare, ett huvudnamn för programtjänsten, en hanterad identitet för Azure-resurser eller en grupp av någon av dessa typer.

Metodtips för autentisering

Vi rekommenderar att du använder en hanterad identitet för program som distribueras till Azure. Om du använder Azure-tjänster som inte stöder hanterade identiteter eller om program distribueras lokalt är ett huvudnamn för tjänsten med ett certifikat ett möjligt alternativ. I det scenariot ska certifikatet lagras i 密钥保管库 och roteras ofta.

Använd ett huvudnamn för tjänsten med en hemlighet för utvecklings- och testningsmiljöer. Använd ett användarhuvudnamn för lokal utveckling och Azure Cloud Shell.

Vi rekommenderar dessa säkerhetsobjekt i varje miljö:

  • Produktionsmiljö: Hanterad identitet eller tjänstens huvudnamn med ett certifikat.
  • Test- och utvecklingsmiljöer: Hanterad identitet, tjänstens huvudnamn med certifikat eller tjänstens huvudnamn med en hemlighet.
  • Lokal utveckling: Användarens huvudnamn eller tjänstens huvudnamn med en hemlighet.

Azure Identity-klientbibliotek

Föregående autentiseringsscenarier stöds av Azure Identity-klientbiblioteket och integreras med 密钥保管库 SDK:er. Du kan använda Azure Identity-klientbiblioteket mellan miljöer och plattformar utan att ändra din kod. 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 på annat sätt.

Mer information om Azure Identity-klientbiblioteket finns i:

.NET Python Java JavaScript
Azure Identity SDK .NET Azure Identity SDK Python Azure Identity SDK Java Azure Identity SDK JavaScript

Anteckning

Vi rekommenderade appautentiseringsbibliotek för 密钥保管库 .NET SDK version 3, men det är nu inaktuellt. Om du vill migrera till 密钥保管库 .NET SDK version 4 följer du vägledningen för migrering av AppAuthentication till Azure.Identity.

Självstudier om hur du autentiserar för att 密钥保管库 i program finns i:

Hantera nycklar, certifikat och hemligheter

Dataplanet styr åtkomsten till nycklar, certifikat och hemligheter. Du kan använda åtkomstprinciper för lokala valv eller Azure RBAC för åtkomstkontroll via dataplanet.

API:er och SDK:er för nycklar

Azure CLI PowerShell REST-API Resource Manager .NET Python Java JavaScript
Referens
Snabbstart
Referens
Snabbstart
Referens Referens
Snabbstart
Referens
Snabbstart
Referens
Snabbstart
Referens
Snabbstart
Referens
Snabbstart

API:er och SDK:er för certifikat

Azure CLI PowerShell REST-API Resource Manager .NET Python Java JavaScript
Referens
Snabbstart
Referens
Snabbstart
Referens Ej tillämpligt Referens
Snabbstart
Referens
Snabbstart
Referens
Snabbstart
Referens
Snabbstart

API:er och SDK:er för hemligheter

Azure CLI PowerShell REST-API Resource Manager .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 密钥保管库 för att endast lagra hemligheter för ditt program. Exempel på hemligheter som ska lagras i 密钥保管库 är:

  • Klientprogramhemligheter
  • Anslutningssträngar
  • Lösenord
  • Nycklar för delad åtkomst
  • SSH-nycklar

All hemlighetsrelaterad information, till exempel användarnamn och program-ID:t, kan lagras som en tagg i en hemlighet. För andra känsliga konfigurationsinställningar bör du använda Конфигурация приложений Azure.

Referenser

Installationspaket och källkod finns i Klientbibliotek.

Information om dataplanssäkerhet för 密钥保管库 finns i Säkerhetsfunktioner i Azure 密钥保管库.

Använda 密钥保管库 i program

Om du vill dra nytta av de senaste funktionerna i 密钥保管库 rekommenderar vi att du använder tillgängliga 密钥保管库 SDK:er för att använda hemligheter, certifikat och nycklar i ditt program. De 密钥保管库 SDK:erna och REST-API:et uppdateras när nya funktioner släpps för produkten och de följer bästa praxis 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 communityer med öppen källkod.

För certifikat kan du använda:

För hemligheter kan du använda:

Kodexempel

Fullständiga exempel på hur du använder 密钥保管库 med program finns i Azure 密钥保管库 kodexempel.

Uppgiftsspecifik vägledning

Följande artiklar och scenarier innehåller uppgiftsspecifik vägledning för att arbeta med Azure 密钥保管库:

Integrering med 密钥保管库

Följande tjänster och scenarier använder eller integrerar med 密钥保管库:

  • Kryptering i vila tillåter kodning (kryptering) av data när de sparas. Datakrypteringsnycklar krypteras ofta med en nyckelkrypteringsnyckel i Azure 密钥保管库 för att ytterligare begränsa åtkomsten.
  • Med 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. Hantering av din egen klientnyckel kallas även BYOK (Bring Your Own Key ).
  • Azure Private Link kan du komma åt Azure-tjänster (till exempel Azure 密钥保管库, Azure Storage och Azure Cosmos DB) och Azure-värdbaserade kund-/partnertjänster via en privat slutpunkt i ditt virtuella nätverk.
  • 密钥保管库 integrering med Azure Event Grid gör det möjligt för användare att meddelas när statusen för en hemlighet som lagras i 密钥保管库 har ändrats. Du kan distribuera nya versioner av hemligheter till program eller rotera hemligheter nästan förfallodatum för att förhindra avbrott.
  • Skydda dina Azure DevOps-hemligheter mot oönskad åtkomst i 密钥保管库.
  • Använd hemligheter som lagras i 密钥保管库 för att ansluta till Azure Storage från Azure Databricks.
  • Konfigurera och kör Azure 密钥保管库-providern för Secrets Store CSI-drivrutinen på Kubernetes.

密钥保管库 översikter och begrepp

Om du vill veta mer om:

Socialt