Schützen von Authentifizierungsgeheimnissen in Azure Key Vault

Beim Konfigurieren von benutzerdefinierten Authentifizierungsanbietern sollten Sie Verbindungsgeheimnisse in Azure Key Vault speichern. In diesem Artikel wird veranschaulicht, wie Sie mithilfe einer verwalteten Identität Azure Static Web Apps Zugriff auf Key Vault für benutzerdefinierte Authentifizierungsgeheimnisse gewähren.

Hinweis

Serverlose Azure-Funktionen unterstützen keine direkte Key Vault-Integration. Wenn Sie Key Vault-Integration in Ihre verwaltete Funktions-App benötigen, müssen Sie den Key Vault-Zugriff in den Code Ihrer App implementieren.

Für Sicherheitsgeheimnisse müssen die folgenden Elemente vorhanden sein.

  • Erstellen Sie eine systemseitig zugewiesene Identität in der Static Web Apps-Instanz.
  • Gewähren Sie der Identität Zugriff auf ein Key Vault-Geheimnis.
  • Verweisen Sie in den Static Web Apps Anwendungseinstellungen auf das Key Vault Geheimnis.

In diesem Artikel wird veranschaulicht, wie jedes dieser Elemente in der Produktion für Anwendungen mit eigenen Funktionen (BYOF, Bring Your Own Functions) eingerichtet wird.

Key Vault-Integration ist nicht verfügbar für:

Hinweis

Die Verwendung verwalteter Identitäten ist nur im Standard-Tarif von Azure Static Web Apps verfügbar.

Voraussetzungen

Erstellen einer Identität

  1. Öffnen Sie Ihre Static Web Apps-Site im Azure-Portal.

  2. Wählen Sie im Menü Einstellungen die Option Identität aus.

  3. Wählen Sie die Registerkarte Systemseitig zugewiesen aus.

  4. Wählen Sie unter der Bezeichnung Status die Option Ein aus.

  5. Wählen Sie Speichern aus.

    Add system-assigned identity

  6. Wählen Sie bei Anzeige des Bestätigungsdialogfelds Ja aus.

    Confirm identity assignment.

Sie können jetzt eine Zugriffsrichtlinie hinzufügen, damit Ihrer statischen Web-App das Lesen von Key Vault-Geheimnisse gestattet wird.

Hinzufügen einer Key Vault-Zugriffsrichtlinie

  1. Öffnen Sie Ihre Key Vault-Ressource im Azure-Portal.

  2. Wählen Sie im Menü Einstellungen die Option Zugriffsrichtlinien aus.

  3. Wählen Sie den Link Zugriffsrichtlinie hinzufügen aus.

  4. Wählen Sie in der Dropdownliste Geheimnisberechtigungen die Option Abrufen aus.

  5. Wählen Sie neben der Bezeichnung Prinzipal auswählen den Link Keine ausgewählt aus.

  6. Suchen Sie im Suchfeld nach Ihrem Static Web Apps-Anwendungsnamen.

  7. Wählen Sie das Listenelement aus, das Ihrem Anwendungsnamen entspricht.

  8. Wählen Sie Auswählen.

  9. Wählen Sie Hinzufügen aus.

  10. Wählen Sie Speichern aus.

    Save Key Vault access policy

Die Zugriffsrichtlinie wird jetzt in Key Vault gespeichert. Greifen Sie als Nächstes auf den URI des Geheimnisses zu, der verwendet werden soll, wenn Sie Ihre statische Web-App der Key Vault-Ressource zuordnen.

  1. Wählen Sie im Menü Einstellungen die Option Geheimnisse aus.

  2. Wählen Sie Ihr gewünschtes Geheimnis aus der Liste aus.

  3. Wählen Sie Ihre gewünschte Geheimnisversion aus der Liste aus.

  4. Wählen Sie am Ende des Textfelds Geheimnisbezeichner die Option Kopieren aus, um den Geheimnis-URI-Wert in die Zwischenablage zu kopieren.

  5. Fügen Sie diesen Wert zur späteren Verwendung in einen Text-Editor ein.

Hinzufügen von Anwendungseinstellungen

  1. Öffnen Sie Ihre Static Web Apps-Site im Azure-Portal.

  2. Wählen Sie im Menü Einstellungen die Option Konfiguration aus.

  3. Wählen Sie im Abschnitt Anwendungseinstellungen die Option Hinzufügen aus.

  4. Geben Sie einen Namen in das Textfeld für das Feld Name ein.

  5. Bestimmen Sie den Geheimniswert im Textfeld für das Feld Wert.

    Der Geheimniswert ist aus einigen verschiedenen Werten zusammengesetzt. Die folgende Vorlage zeigt, wie die endgültige Zeichenfolge aufgebaut ist.

    @Microsoft.KeyVault(SecretUri=<YOUR-KEY-VAULT-SECRET-URI>)
    

    Eine endgültige Zeichenfolge würde z. B. wie im folgenden Beispiel aussehen:

    @Microsoft.KeyVault(SecretUri=https://myvault.vault.azure.net/secrets/mysecret/)
    

    Alternativ:

    @Microsoft.KeyVault(VaultName=myvault;SecretName=mysecret)
    

    Verwenden Sie die folgenden Schritte, um den vollständigen Geheimniswert zu erstellen.

  6. Kopieren Sie die oben stehende Vorlage, und fügen Sie sie in einen Text-Editor ein.

  7. Ersetzen Sie <YOUR-KEY-VAULT-SECRET-URI> durch den Key Vault-URI-Wert, den Sie zuvor festgelegt haben.

  8. Kopieren Sie den neuen vollständigen Zeichenfolgenwert.

  9. Fügen Sie den Wert in das Textfeld für das Feld Wert ein.

  10. Wählen Sie OK aus.

  11. Wählen Sie im oberen Bereich der Symbolleiste Anwendungseinstellungen die Option Speichern aus.

    Save application settings

Wenn Ihre benutzerdefinierte Authentifizierungskonfiguration nun auf die neu erstellte Anwendungseinstellung verweist, wird der Wert unter Verwendung der Identität Ihrer statischen Web-App aus Azure Key Vault extrahiert.

Nächste Schritte