Ensure Azure Key Vaults are Used to Store Secrets
Warum das wichtig ist
Die direkte Speicherung von Anwendungsgeheimnissen wie Verschlüsselungsschlüsseln, Zertifikaten oder verwalteten Identitätsanmeldeinformationen im Code oder in Konfigurationsdateien stellt ein erhebliches Sicherheitsrisiko dar. Jeder Benutzer mit Zugriff auf den Anwendungsquellcode oder die Laufzeitumgebung kann diese Anmeldeinformationen extrahieren und missbrauchen, um auf geschützte Daten zuzugreifen oder diese zu ändern. Azure Key Vault bietet einen zentralisierten, berechtigungsgesteuerten Tresor für Geheimnisse, der die Gefährdung reduziert und die Rotation von Anmeldeinformationen ohne erneute Bereitstellung der Anwendung ermöglicht.
Was Aether365 prüft
Aether365 überprüft, ob Ihre Azure App Service und die damit verbundenen gehosteten Dienste für die Verwendung von Azure Key Vault zum Speichern aller Geheimnisse, Verschlüsselungsschlüssel und Zertifikate konfiguriert sind. Diese Überprüfung wird im Aether365-Dashboard unter den Sicherheitsprüfungen für azure-app-services angezeigt und kennzeichnet jeden gehosteten Dienst, der für die Speicherung von Geheimnissen keinen Schlüsseltresor referenziert.
Behebung des Problems
- Erstellen oder identifizieren Sie eine vorhandene Azure Key Vault-Instanz in Ihrem Abonnement. Gewähren Sie der verwalteten Identität Ihres App Service die entsprechenden Berechtigungen (z.B. die Rolle Key Vault Secrets User), um Geheimnisse aus diesem Tresor zu lesen.
- Migrieren Sie alle vertraulichen Werte wie Verbindungszeichenfolgen, API-Schlüssel und Zertifikatfingerabdrücke aus Anwendungseinstellungen oder Code als Geheimnisse in Ihren Key Vault.
- Ersetzen Sie in Ihren App Service-Anwendungseinstellungen die fest codierten geheimen Werte durch Key Vault-Referenzen im folgenden Format:
@Microsoft.KeyVault(SecretUri=https://myvault.vault.azure.net/secrets/mysecret/). - Entfernen Sie alle Klartext-Geheimnisse aus Ihrem Anwendungscode, Konfigurationsdateien und Umgebungsvariablen. Testen Sie die Anwendung gründlich, um sicherzustellen, dass sie zur Laufzeit Geheimnisse aus Key Vault abrufen kann.
- Wenn Sie die Azure CLI verwenden, können Sie die Tresorkonfiguration mit
az keyvault secret list –vault-name <Tresorname>überprüfen. Überwachen Sie Key Vault-Anforderungsprotokolle und -Kosten, da pro 10.000 Anforderungen zusätzliche Gebühren anfallen.
Compliance
- CIS Microsoft Azure Foundations 3.0.0, Abschnitt 9.11 (Stufe 2)
- Microsoft Cloud Security Benchmark: Identity Management (IM-3) – Manage application identities securely and automatically
Zugehörige Ressourcen
- Azure App Service Key Vault References
- Microsoft Learn: Secure application identities automatically
- Azure CLI keyvault commands