Hantera hemligheter i Azure Container Apps

Med Azure Container Apps kan ditt program lagra känsliga konfigurationsvärden med hög säkerhet. När hemligheter har definierats på programnivå är skyddade värden tillgängliga för revisioner i dina containerappar. Dessutom kan du referera till skyddade värden i skalningsregler. Information om hur du använder hemligheter med Dapr finns i Dapr-integrering.

  • Hemligheter är begränsade till ett program, utanför specifika revisioner av ett program.
  • Att lägga till, ta bort eller ändra hemligheter genererar inte nya revisioner.
  • Varje programrevision kan referera till en eller flera hemligheter.
  • Flera revisioner kan referera till samma hemlighet eller hemligheter.

En uppdaterad eller borttagen hemlighet påverkar inte automatiskt befintliga revisioner i din app. När en hemlighet uppdateras eller tas bort kan du hantera ändringar på något av två sätt:

  1. Distribuera en ny revision.
  2. Starta om en befintlig revision.

Innan du tar bort en hemlighet måste du distribuera en ny revision som inte längre refererar till den gamla hemligheten. Inaktivera sedan alla revisioner som refererar till hemligheten.

Definiera hemligheter

Hemligheter definieras som en uppsättning namn/värde-par. Värdet för varje hemlighet anges direkt eller som en referens till en hemlighet som lagras i Azure Key Vault.

Lagra hemligt värde i Container Apps

När du definierar hemligheter via portalen eller via olika kommandoradsalternativ.

  1. Gå till containerappen i Azure-portalen.

  2. Under avsnittet Inställningar väljer du Hemligheter.

  3. Markera Lägga till.

  4. I fönstret Lägg till hemlig kontext anger du följande information:

    • Namn: Namnet på hemligheten.
    • Typ: Välj Container Apps Secret.
    • Värde: Värdet för hemligheten.
  5. Markera Lägga till.

Referenshemlighet från Key Vault

När du definierar en hemlighet skapar du en referens till en hemlighet som lagras i Azure Key Vault. Container Apps hämtar automatiskt det hemliga värdet från Key Vault och gör det tillgängligt som en hemlighet i din containerapp.

Om du vill referera till en hemlighet från Key Vault måste du först aktivera hanterad identitet i containerappen och ge identiteten åtkomst till Key Vault-hemligheterna.

Information om hur du aktiverar hanterad identitet i containerappen finns i Hanterade identiteter.

Om du vill ge åtkomst till Key Vault-hemligheter skapar du en åtkomstprincip i Key Vault för den hanterade identitet som du skapade. Aktivera behörigheten Hämta hemlighet för den här principen.

  1. Gå till containerappen i Azure-portalen.

  2. Under avsnittet Inställningar väljer du Identitet.

  3. På fliken Systemtilldelade väljer du .

  4. Välj Spara för att aktivera systemtilldelad hanterad identitet.

  5. Under avsnittet Inställningar väljer du Hemligheter.

  6. Markera Lägga till.

  7. I fönstret Lägg till hemlig kontext anger du följande information:

    • Namn: Namnet på hemligheten.
    • Typ: Välj Key Vault-referens.
    • Url för Key Vault-hemlighet: URI:n för din hemlighet i Key Vault.
    • Identitet: Identiteten som ska användas för att hämta hemligheten från Key Vault.
  8. Markera Lägga till.

Kommentar

Om du använder UDR med Azure Firewall måste du lägga AzureKeyVault till tjänsttaggen och login.microsoft.com FQDN i listan över tillåtna för brandväggen. Se konfigurera UDR med Azure Firewall för att avgöra vilka ytterligare tjänsttaggar du behöver.

Hemlig URI för Key Vault och hemlig rotation

Nyckelvalvets hemliga URI måste ha något av följande format:

  • https://myvault.vault.azure.net/secrets/mysecret/ec96f02080254f109c51a1f14cdb1931: Referera till en specifik version av en hemlighet.
  • https://myvault.vault.azure.net/secrets/mysecret: Referera till den senaste versionen av en hemlighet.

Om en version inte anges i URI:n använder appen den senaste versionen som finns i nyckelvalvet. När nyare versioner blir tillgängliga hämtar appen automatiskt den senaste versionen inom 30 minuter. Alla aktiva revisioner som refererar till hemligheten i en miljövariabel startas automatiskt om för att hämta det nya värdet.

Om du vill ha fullständig kontroll över vilken version av en hemlighet som används anger du versionen i URI:n.

Referera till hemligheter i miljövariabler

När du har deklarerat hemligheter på programnivå enligt beskrivningen i avsnittet definiera hemligheter kan du referera till dem i miljövariabler när du skapar en ny revision i containerappen. När en miljövariabel refererar till en hemlighet fylls dess värde med det värde som definierats i hemligheten.

Exempel

I följande exempel visas ett program som deklarerar en anslutningssträng på programnivå. Den här anslutningen refereras i en containermiljövariabel och i en skalningsregel.

När du har definierat en hemlighet i containerappen kan du referera till den i en miljövariabel när du skapar en ny revision.

  1. Gå till containerappen i Azure-portalen.

  2. Öppna sidan Revisionshantering.

  3. Välj Skapa ny revision.

  4. På sidan Skapa och distribuera ny revision väljer du en container.

  5. I avsnittet Miljövariabler väljer du Lägg till.

  6. Ange följande information:

    • Namn: Namnet på miljövariabeln.
    • Källa: Välj Referera till en hemlighet.
    • Värde: Välj den hemlighet som du vill referera till.
  7. Välj Spara.

  8. Välj Skapa för att skapa den nya revisionen.

Montera hemligheter i en volym

När du har deklarerat hemligheter på programnivå enligt beskrivningen i avsnittet definiera hemligheter kan du referera till dem i volymmonteringar när du skapar en ny revision i containerappen. När du monterar hemligheter i en volym monteras varje hemlighet som en fil i volymen. Filnamnet är namnet på hemligheten och filinnehållet är värdet för hemligheten. Du kan läsa in alla hemligheter i en volymmontering eller läsa in specifika hemligheter.

Exempel

När du har definierat en hemlighet i containerappen kan du referera till den i en volymmontering när du skapar en ny revision.

  1. Gå till containerappen i Azure-portalen.

  2. Öppna sidan Revisionshantering.

  3. Välj Skapa ny revision.

  4. På sidan Skapa och distribuera ny revision .

  5. Välj en container och välj Redigera.

  6. I avsnittet Volymmonteringar expanderar du avsnittet Hemligheter .

  7. Välj Skapa ny volym.

  8. Ange följande information:

    • Namn: mysecrets
    • Montera alla hemligheter: aktiverat

    Kommentar

    Om du vill läsa in specifika hemligheter inaktiverar du Montera alla hemligheter och väljer de hemligheter som du vill läsa in.

  9. Markera Lägga till.

  10. Under Volymnamn väljer du mysecrets.

  11. Under Monteringssökväg anger du /mnt/secrets.

  12. Välj Spara.

  13. Välj Skapa för att skapa den nya revisionen med volymmonteringen.

Nästa steg