Metodtips för hantering av hemligheter i Key Vault

Med Azure Key Vault kan du lagra tjänst- eller programautentiseringsuppgifter på ett säkert sätt, till exempel lösenord och åtkomstnycklar som hemligheter. Alla hemligheter i nyckelvalvet krypteras med en programvarunyckel. När du använder Key Vault behöver du inte längre lagra säkerhetsinformation i dina program. När du inte behöver lagra säkerhetsinformation i program eliminerar du behovet av att göra den här informationen till en del av koden.

Exempel på hemligheter som ska lagras i Key Vault:

  • Klientprogramhemligheter
  • Anslutningssträngar
  • Lösenord
  • Åtkomstnycklar (Redis Cache, Azure Event Hubs, Azure Cosmos DB)
  • SSH-nycklar

Annan känslig information, till exempel IP-adresser, tjänstnamn och andra konfigurationsinställningar, bör lagras i Azure App Configuration i stället för i Key Vault.

Varje enskilt nyckelvalv definierar säkerhetsgränser för hemligheter. För ett enda nyckelvalv per program, per region och miljö, rekommenderar vi att du tillhandahåller detaljerad isolering av hemligheter för ett program.

Mer information om metodtips för Key Vault finns i Metodtips för att använda Key Vault.

Konfiguration och lagring

Lagra information om autentiseringsuppgifter som krävs för att få åtkomst till databasen eller tjänsten i hemligt värde. När det gäller sammansatta autentiseringsuppgifter som användarnamn/lösenord kan det lagras som ett niska veze- eller JSON-objekt. Annan information som krävs för hantering bör lagras i taggar, t.ex. rotationskonfiguration.

Mer information om hemligheter finns i Om Azure Key Vault-hemligheter.

Rotering av hemligheter

Hemligheter lagras ofta i programminnet som miljövariabler eller konfigurationsinställningar för hela programmets livscykel, vilket gör dem känsliga för oönskad exponering. Eftersom hemligheter är känsliga för läckage eller exponering är det viktigt att rotera dem ofta, minst var 60:e dag.

Mer information om roteringsprocessen för hemligheter finns i Automatisera rotationen av en hemlighet för resurser som har två uppsättningar autentiseringsuppgifter.

Åtkomst och nätverksisolering

Du kan minska exponeringen för dina valv genom att ange vilka IP-adresser som har åtkomst till dem. Konfigurera brandväggen så att endast program och relaterade tjänster får åtkomst till hemligheter i valvet för att minska risken för att angripare får åtkomst till hemligheter.

Mer information om nätverkssäkerhet finns i Konfigurera nätverksinställningar för Azure Key Vault.

Dessutom bör program följa minst privilegierad åtkomst genom att bara ha åtkomst till läshemligheter. Åtkomst till hemligheter kan styras antingen med åtkomstprinciper eller med rollbaserad åtkomstkontroll i Azure.

Mer information om åtkomstkontroll i Azure Key Vault finns i:

Tjänstbegränsningar och cachelagring

Key Vault skapades ursprungligen med begränsningar som anges i Azure Key Vault-tjänstens gränser. Här är två rekommenderade metodtips för att maximera dina dataflödesfrekvenser:

  • Cachelagrade hemligheter i ditt program i minst åtta timmar.
  • Implementera exponentiell back-off-återförsökslogik för att hantera scenarier när tjänstgränserna överskrids.

Mer information om begränsningsvägledning finns i Vägledning för Begränsning av Azure Key Vault.

Övervakning

Om du vill övervaka åtkomsten till dina hemligheter och deras livscykel aktiverar du Key Vault-loggning. Använd Azure Monitor för att övervaka alla hemligheter i alla dina valv på ett och samma ställe. Du kan också använda Azure Event Grid för att övervaka hemligheternas livscykel eftersom det är enkelt att integrera med Azure Logic Apps och Azure Functions.

Mer information finns i:

Skydd mot säkerhetskopiering och rensning

Aktivera rensningsskydd för att skydda mot skadlig eller oavsiktlig borttagning av hemligheterna. I scenarier när rensningsskydd inte är ett möjligt alternativ rekommenderar vi säkerhetskopiering av hemligheter som inte kan återskapas från andra källor.

Läs mer