Verwalten von Geheimnissen in Azure Container Apps

Mithilfe von Azure Container Apps kann Ihre Anwendung vertrauliche Konfigurationswerte sicher speichern. Sobald geheime Schlüssel auf Anwendungsebene definiert sind, sind gesicherte Werte für Überarbeitungen in Ihren Container-Apps verfügbar. Darüber hinaus können Sie auf gesicherte Werte innerhalb von Skalierungsregeln verweisen. Informationen zur Verwendung von geheimen Schlüsseln mit Dapr finden Sie in der Dapr-Integration.

  • Geheimnisse sind einer Anwendung zugeordnet, unabhängig von spezifischen Revisionen einer Anwendung.
  • Das Hinzufügen, Entfernen oder Ändern von Geheimnissen generiert keine neuen Revisionen.
  • Jede Anwendungsrevision kann auf mindestens ein Geheimnis verweisen.
  • Mehrere Revisionen können auf dieselben Geheimnisse verweisen.

Ein aktualisiertes oder gelöschtes Geheimnis wirkt sich nicht automatisch auf vorhandene Revisionen in Ihrer App aus. Wenn ein Geheimnis aktualisiert oder gelöscht wird, haben Sie zwei Möglichkeiten, auf die Änderungen zu reagieren:

  1. Eine neue Revision bereitstellen.
  2. Eine bestehende Revision neu starten.

Stellen Sie vor dem Löschen eines Geheimnisses eine neue Revision bereit, die nicht mehr auf das alte Geheimnis verweist. Deaktivieren Sie dann alle Revisionen, die auf das Geheimnis verweisen.

Definieren von Geheimnissen

Geheime Schlüssel werden als Eine Reihe von Namens-Wert-Paaren definiert. Der Wert jedes geheimen Schlüssels wird direkt oder als Verweis auf einen geheimen Schlüssel angegeben, der in Azure Key Vault gespeichert ist.

Geheimen Store-Wert in Container-Apps

Wenn Sie geheime Schlüssel über das Portal oder über verschiedene Befehlszeilenoptionen definieren.

  1. Wechseln Sie in der Azure-Portal zu Ihrer Container-App.

  2. Wählen Sie unter dem Abschnitt "Einstellungen" die Option "Geheime Schlüssel" aus.

  3. Klicken Sie auf Hinzufügen.

  4. Geben Sie im Bereich "Geheimen Schlüssel hinzufügen" die folgenden Informationen ein:

    • Name: Der Name des geheimen Schlüssels.
    • Typ: Wählen Sie den geheimen Container-Apps-Schlüssel aus.
    • Wert: Der Wert des geheimen Schlüssels.
  5. Klicken Sie auf Hinzufügen.

Schlüsselschlüssel aus Key Vault referenzieren

Wenn Sie einen geheimen Schlüssel definieren, erstellen Sie einen Verweis auf einen geheimen Schlüssel, der in Azure Key Vault gespeichert ist. Container-Apps rufen automatisch den geheimen Wert aus Key Vault ab und stellt ihn in Ihrer Container-App als geheimen Schlüssel zur Verfügung.

Um auf einen geheimen Schlüssel von Key Vault zu verweisen, müssen Sie zuerst die verwaltete Identität in Ihrer Container-App aktivieren und den Identitätszugriff auf die Schlüsseltresorschlüssel gewähren.

Informationen zum Aktivieren der verwalteten Identität in Ihrer Container-App finden Sie unter "Verwaltete Identitäten".

Um Zugriff auf Schlüsseltresorschlüssel zu gewähren, erstellen Sie eine Zugriffsrichtlinie in Key Vault für die von Ihnen erstellte verwaltete Identität. Aktivieren Sie die „Get“-Geheimnisberechtigung für diese Richtlinie.

  1. Wechseln Sie in der Azure-Portal zu Ihrer Container-App.

  2. Wählen Sie im Abschnitt Einstellungen die Option "Identität" aus.

  3. Wählen Sie auf der Registerkarte "System zugewiesen" die Option "Ein" aus.

  4. Wählen Sie " Speichern" aus, um die vom System zugewiesene verwaltete Identität zu aktivieren.

  5. Wählen Sie unter dem Abschnitt "Einstellungen" die Option "Geheime Schlüssel" aus.

  6. Klicken Sie auf Hinzufügen.

  7. Geben Sie im Bereich "Geheimen Schlüssel hinzufügen" die folgenden Informationen ein:

    • Name: Der Name des geheimen Schlüssels.
    • Typ: Wählen Sie den Schlüsseltresorverweis aus.
    • Schlüsseltresorschlüsselschlüssel-URL: Der URI Ihres geheimen Schlüssels im Key Vault.
    • Identität: Die Identität, die zum Abrufen des geheimen Schlüssels aus dem Key Vault verwendet werden soll.
  8. Klicken Sie auf Hinzufügen.

Hinweis

Wenn Sie UDR mit Azure Firewall verwenden, müssen Sie das AzureKeyVault Diensttag und den login.microsoft.com FQDN zur Zulassungsliste für Ihre Firewall hinzufügen. Informationen zum Konfigurieren von UDR mit azure Firewall finden Sie, um zu entscheiden, welche zusätzlichen Diensttags Sie benötigen.

Schlüsseltresor-Geheim-URI und geheime Drehung

Der geheime Schlüsseltresor-URI muss in einem der folgenden Formate vorliegen:

  • https://myvault.vault.azure.net/secrets/mysecret/ec96f02080254f109c51a1f14cdb1931: Verweisen Sie auf eine bestimmte Version eines geheimen Schlüssels.
  • https://myvault.vault.azure.net/secrets/mysecret: Verweisen Sie auf die neueste Version eines geheimen Schlüssels.

Wenn eine Version nicht im URI angegeben ist, verwendet die App die neueste Version, die im Schlüsseltresor vorhanden ist. Wenn neuere Versionen verfügbar sind, ruft die App die neueste Version innerhalb von 30 Minuten automatisch ab. Alle aktiven Überarbeitungen, die auf den geheimen Schlüssel in einer Umgebungsvariable verweisen, werden automatisch neu gestartet, um den neuen Wert zu übernehmen.

Geben Sie für die vollständige Kontrolle darüber, welche Version eines geheimen Schlüssels verwendet wird, die Version im URI an.

Verweisen auf Geheimnisse in Umgebungsvariablen

Nachdem Sie Geheimnisse auf Anwendungsebene deklariert haben, wie im Abschnitt Definieren von Geheimnissen beschrieben, können Sie auf sie in Umgebungsvariablen verweisen, wenn Sie eine neue Revision in Ihrer Container-App erstellen. Wenn eine Umgebungsvariable auf ein Geheimnis verweist, wird ihr Wert mit dem Wert aufgefüllt, der im Geheimnis definiert ist.

Beispiel

Das folgende Beispiel zeigt eine Anwendung, die eine Verbindungszeichenfolge auf Anwendungsebene deklariert. Auf diese Verbindung wird in einer Containerumgebungsvariable und in einer Skalierungsregel verwiesen.

Nachdem Sie einen geheimen Schlüssel in Ihrer Container-App definiert haben, können Sie ihn in einer Umgebungsvariable referenzieren, wenn Sie eine neue Revision erstellen.

  1. Wechseln Sie in der Azure-Portal zu Ihrer Container-App.

  2. Öffnen Sie die Seite "Revisionsverwaltung ".

  3. Wählen Sie Create new revision (Neue Revision erstellen) aus.

  4. Wählen Sie auf der Seite "Neue Überarbeitung erstellen und bereitstellen" einen Container aus.

  5. Wählen Sie im Abschnitt "Umgebungsvariablen" "Hinzufügen" aus.

  6. Geben Sie Folgendes ein:

    • Name: Der Name der Umgebungsvariable.
    • Quelle: Wählen Sie " Bezug auf einen geheimen Schlüssel" aus.
    • Wert: Wählen Sie den geheimen Schlüssel aus, auf den Sie verweisen möchten.
  7. Wählen Sie Speichern aus.

  8. Wählen Sie " Erstellen" aus, um die neue Überarbeitung zu erstellen.

Montagegeheimnisse in einem Volume

Nachdem Sie geheime Schlüssel auf Anwendungsebene deklariert haben, wie im Abschnitt "Definieren von geheimen Schlüsseln " beschrieben, können Sie sie in Volume-Bereitstellungen referenzieren, wenn Sie eine neue Überarbeitung in Ihrer Container-App erstellen. Wenn Sie geheime Schlüssel in einem Volume bereitstellen, wird jeder geheime Schlüssel als Datei im Volume bereitgestellt. Der Dateiname ist der Name des geheimen Schlüssels, und der Dateiinhalt ist der Wert des geheimen Schlüssels. Sie können alle geheimen Schlüssel in einer Volume-Bereitstellung laden oder bestimmte geheime Schlüssel laden.

Beispiel

Nachdem Sie einen geheimen Schlüssel in Ihrer Container-App definiert haben, können Sie darauf in einer Volume-Bereitstellung verweisen, wenn Sie eine neue Revision erstellen.

  1. Wechseln Sie in der Azure-Portal zu Ihrer Container-App.

  2. Öffnen Sie die Seite "Revisionsverwaltung ".

  3. Wählen Sie Create new revision (Neue Revision erstellen) aus.

  4. Auf der Seite "Neue Überarbeitung erstellen und bereitstellen"

  5. Wählen Sie einen Container und dann "Bearbeiten" aus.

  6. Erweitern Sie im Abschnitt "Volume Mounts " den Abschnitt "Geheime Schlüssel ".

  7. Wählen Sie " Neues Volume erstellen" aus.

  8. Geben Sie Folgendes ein:

    • Name: mysecrets
    • Alle geheimen Schlüssel bereitstellen: aktiviert

    Hinweis

    Wenn Sie bestimmte geheime Schlüssel laden möchten, deaktivieren Sie alle geheimen Schlüssel , und wählen Sie die geheimen Schlüssel aus, die Sie laden möchten.

  9. Klicken Sie auf Hinzufügen.

  10. Wählen Sie unter "Volumename" "mysecrets" aus.

  11. Geben Sie unter dem Bergpfad /mnt/secrets ein.

  12. Wählen Sie Speichern aus.

  13. Wählen Sie " Erstellen" aus, um die neue Revision mit der Volume-Bereitstellung zu erstellen.

Nächste Schritte