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.
Hemligheter på appnivå är konfigurationsvärden som din funktionskod och bindningar använder under körning. Till skillnad från Functions-åtkomstnycklar, som skyddar HTTP-slutpunkter, är hemligheter på appnivå de autentiseringsuppgifter som programmet behöver för att ansluta till andra tjänster.
Vanliga exempel är:
-
Infrastrukturanslutningar -
AzureWebJobsStorageanslutningssträngar, utlösar- och bindningsanslutningar för Event Hubs, Service Bus, Cosmos DB och SQL. - Autentiseringsuppgifter för företag – API-nycklar från tredje part, databaslösenord, SaaS-plattformstoken.
- Anpassad konfiguration – alla känsliga värden som koden läser från miljövariabler.
Välj ett lagringsalternativ
Azure Container Apps ger dig två sätt att lagra hemligheter på appnivå:
| Option | Passar bäst för | Centraliserad hantering | Automatisk rotation | Granskningsloggning |
|---|---|---|---|---|
| Container Apps-hemligheter | Dev/test, enkla enkeltapp arbetsflöden | Nej – begränsat till en app | No | Endast aktivitetsloggar |
| Key Vault-referenser | Produktion, flera appar, efterlevnad | Ja – i alla appar | Ja (versionslös URI) | Fullständig diagnostikverktyg för Key Vault |
Tips/Råd
Börja med Container Apps-hemligheter för enkelhetens skull. Flytta till referenser i Key Vault när du behöver centraliserad hantering, automatisk rotation eller efterlevnadsgranskning.
Förutsättningar
- Ett Azure-konto med en aktiv prenumeration. Skapa ett konto kostnadsfritt.
- Azure CLI version 2.40.0 eller senare.
- En befintlig Azure Functions app i Container Apps eller behörigheter för att skapa en.
Använd hemligheter i Container Apps
Container Apps lagrar hemligheter i appens configuration.secrets matris och krypterar värden i vila. Du kan referera till hemligheter i miljövariabler, skalningsregler, volymmonteringar och Dapr-komponenter.
Lagra en hemlighet
Gå till din Functions-containerapp i Azure-portalen.
Under Inställningar väljer du Hemligheter.
Välj Lägg till och ange följande värden:
Fastighet Value Namn Ett hemligt namn som database-password. Använd endast små bokstäver, siffror och bindestreck.Type Hemlighet för Container-appar Value Ditt hemliga värde. Välj Lägg till.
Referera till hemligheten i en miljövariabel
När du har lagrat en hemlighet refererar du till den i en miljövariabel så att funktionskoden kan läsa den.
I din Functions-containerapp går du till Programoch väljer Revisioner och repliker.
Välj Skapa ny revision.
På fliken Container väljer du din container och väljer sedan Redigera.
Välj fliken Miljövariabler och välj sedan Lägg till.
Ange följande värden:
Fastighet Value Namn DATABASE_PASSWORDSource Referera till en hemlighet Value database-passwordVälj Spara och välj sedan Skapa för att distribuera den nya revisionen.
Verifiera hemligheten
Bekräfta att funktionen kan läsa det hemliga värdet genom att anropa funktionen och kontrollera att den körs utan fel som rör saknade konfigurationer.
curl "https://<FUNCTIONS_APP_URL>/api/<FUNCTION_NAME>"
Important
Container Apps injicerar det hemliga värdet i miljövariabeln under körning. Koden läser miljövariabeln och kommer inte åt det hemliga arkivet direkt.
Limitations
Container Apps-hemligheter har följande begränsningar:
- Ingen centralisering – varje containerapp lagrar sina egna hemligheter separat.
- Ingen automatisk rotation – du måste uppdatera hemliga värden manuellt.
- Ingen förfallotid – hemligheter upphör inte att gälla automatiskt.
- Begränsad granskning – endast grundläggande aktivitetsloggar. ingen detaljerad granskning av hemlig åtkomst.
- Ingen versionshantering – ingen inbyggd hemlig versionshistorik.
- Uppdateringsbeteende – om du ändrar en hemlighet utlöses ingen ny revision. Du måste skapa en ny revision eller starta om befintliga revisioner för att hämta ändringar.
Använd Key Vault-referenser
Key Vault-referenser låter din containerapp hämta hemligheter direkt från Azure Key Vault med hjälp av en hanterad identitet. Med den här metoden får du centraliserad hantering, automatisk rotation och granskning i efterlevnadsklass.
Steg 1: Konfigurera hanterad identitet
Containerappen behöver en hanterad identitet för att autentisera mot Key Vault utan användning av autentiseringsuppgifter.
Gå till din Functions-containerapp i Azure-portalen.
Under Inställningar väljer du Identitet.
På fliken Systemtilldelat anger du Status till På.
Välj Spara och välj sedan Ja för att bekräfta.
Steg 2: Bevilja Key Vault åtkomst
Tilldela rollen Key Vault Secrets User till den hanterade identiteten så att den kan läsa hemligheter.
Gå till din Key Vault i Azure-portalen.
Under Inställningar väljer du Åtkomstkontroll (IAM).
Välj Lägg till>Lägg till rolltilldelning.
På fliken Role väljer du Key Vault Secrets User.
Välj Nästa.
På fliken Medlemmar väljer du Hantera identitet, och sedan väljer du Välj medlemmar.
I fönstret Välj hanterade identiteter väljer du din prenumeration, väljer ContainerApp för den hanterade identitetstypen, väljer din Functions-containerapp och väljer sedan Välj.
Välj Granska + tilldela.
Steg 3: Lagra en hemlighet i Key Vault
Välj Secrets under Objects i din Key Vault.
Välj Generera/Importera.
Ange följande värden:
Fastighet Value Alternativ för uppladdning Manuell Namn Ett hemligt namn, till exempel DatabasePassword.Value Ditt hemliga värde. Välj Skapa.
Välj din nyligen skapade hemlighet och välj sedan den aktuella versionen.
Kopiera URI:n för den hemliga identifieraren. Använd den versionslösa URI:n (utan det avslutande versionssegmentet) för att aktivera automatisk rotation.
Steg 4: Referera till Key Vault-hemligheten i Container Apps
Skapa en Container Apps-hemlighet som refererar till den Key Vault hemligheten och binda den sedan till en miljövariabel.
Gå till din Functions-containerapp. Under Inställningar väljer du Hemligheter.
Välj Lägg till.
I Lägg till hemlighet anger du följande värden:
Fastighet Value Namn database-passwordType Key Vault referensen Key Vault hemlig URL Den hemliga identifierar-URI som du kopierade. Identitet Systemtilldelad (eller din användartilldelade identitet). Välj Lägg till.
Under Program väljer du Revisioner och repliker. Skapa en ny revision med miljövariabeln
DATABASE_PASSWORDsom refererar till hemlighetendatabase-password.
Steg 5: Verifiera referensen för Key Vault
Anropa din funktion och bekräfta att den körs utan fel som rör saknade konfigurationer.
curl "https://<FUNCTIONS_APP_URL>/api/<FUNCTION_NAME>"
Automatisk hemlig rotation
När du refererar till en Key Vault hemlighet med en versionslös URI hämtar Container Apps automatiskt den senaste versionen:
-
Versionslös URI:
https://myvault.vault.azure.net/secrets/mysecret– använder alltid den senaste versionen. -
Versionshanterad URI:
https://myvault.vault.azure.net/secrets/mysecret/ec96f020...– låst till en specifik version.
Med versionslösa URI:er söker Container Apps efter nya versioner inom 30 minuter och startar automatiskt om aktiva revisioner för att hämta det nya värdet.
Relaterat innehåll
- Översikt över Functions-hemligheter
- Konfigurera Functions-värdnyckellagring
- Hantera hemligheter i Azure Container Apps
- Hanterade identiteter i Container Apps
- Azure Key Vault utvecklarguide