Verwaltung von Geheimnissen für Azure Functions auf Azure Container Apps

Wenn Sie Azure Functions auf Azure Container Apps ausführen, arbeiten Sie mit zwei Kategorien geheimer Schlüssel:

Kategorie Beschreibung Verbraucht von
Geheime Schlüssel auf App-Ebene Konfigurationswerte, die der Funktionscode zur Laufzeit liest, z. B. Datenbankverbindungszeichenfolgen, API-Schlüssel und Trigger-/Bindungsanmeldeinformationen. Ihr Code und die Funktionslaufzeitbindungen.
Tastenkombinationen für Funktionen Authentifizierungstoken (Zugriffstasten), die HTTP-ausgelöste Funktionsendpunkte sichern, einschließlich Master-, Host-, Funktions- und Systemschlüssel. Externe Aufrufer Ihrer HTTP-Funktionen (Dienste, Webhooks, Entwickler).

Diese beiden Kategorien unterscheiden sich in Richtung:

Geheime Schlüssel auf App-Ebene Zugriffstasten für Funktionen
Richtung Ausgehend – Ihre Anwendung wird bei anderen Diensten authentifiziert Eingehend – Anrufer authentifizieren sich bei Ihrer Funktion
Wer hält das Geheimnis Ihre Funktions-App Der Aufrufer (Webhook-Anbieter, Dienst, Entwickler)
Was es schützt Womit Ihre Funktion eine Verbindung herstellt Wer kann Ihren HTTP-Endpunkt aufrufen?
Überprüft von Der Zieldienst Die Funktionslaufzeit

Geheime Schlüssel auf App-Ebene

Geheime Schlüssel auf App-Ebene sind die Anmeldeinformationen, die Ihr Funktionscode und Bindungen benötigen, um eine Verbindung mit externen Diensten herzustellen. Sie können sie auf zwei Arten speichern:

Auswahl Am besten geeignet für: Drehung Überwachung Guide
Geheime Container-Apps Entwicklungs- und Testumgebungen, einfache Einzelanwendungs-Workloads Manual Nur Aktivitätsprotokolle Geheime Schlüssel auf Store-App-Ebene
Key Vault Referenzen Produktion, Mehrfachanwendung, Compliance Automatisch (versionsfreie URI) Vollständige Key Vault Diagnosefunktionen Geheime Schlüssel auf Store-App-Ebene

Tipp

Beginnen Sie mit den Geheimnissen der Container-Apps der Einfachheit halber. Wechseln Sie zu Key Vault-Verweisen, wenn Sie eine zentrale Verwaltung, automatische Rotation oder Compliance-konforme Überwachung benötigen.

Zugriffstasten für Funktionen

Zugriffsschlüssel bieten eine leichtgewichtige, gemeinsam geheime Authentifizierung für HTTP-Endpunkte. Verwenden Sie Access Keys, wenn Aufrufer keine Microsoft Entra ID Token wie Webhooks von Drittanbietern, Dienst-zu-Dienst-Aufrufe oder während der Entwicklung präsentieren können.

Legen Sie die AzureWebJobsSecretStorageType Umgebungsvariable fest, um ein Speicher-Back-End auszuwählen:

Back-End Einstellungswert Am besten geeignet für: Guide
Container Apps Secret Store containerapps Die meisten Workloads – keine externen Abhängigkeiten (empfohlen) Konfigurieren von Hostschlüsseln
Azure Key Vault keyvault Zentralisierte Governance, Complianceüberwachung Konfigurieren von Hostschlüsseln
Azure Blob Storage blob Legacy-Apps oder vorhandene AzureWebJobsStorage Abhängigkeiten Konfigurieren von Hostschlüsseln
Lokales Dateisystem files Nicht empfohlen für Container-Apps – siehe Warnung N/A

Behalte diese Backend-Überlegungen im Hinterkopf:

  • Die Laufzeit wählt nicht automatisch den geheimen Speicher von Container Apps aus. Wenn du ihn nicht auf einen nicht erkannten Wert setzt AzureWebJobsSecretStorageType oder setzt, nutzt der Functions-Host Blob Storage, wenn AzureWebJobsStorage es verfügbar ist.
  • Bleiben Sie AzureWebJobsStorage für Speicher-Gesundheitsprüfungen und speicherabhängige Funktionen konfiguriert.
  • Setzen Sie AzureWebJobsSecretStorageType nicht auf files. Das Dateisystem von Container Apps ist flüchtig, sodass Schlüssel, die in diesem Backend gespeichert sind, verloren gehen, wenn die App auf null skaliert, neu startet oder eine neue Version bereitstellt.

Nächste Schritte

Wählen Sie den Leitfaden aus, der dem Typ des geheimen Schlüssels entspricht, den Sie verwalten müssen: