Ich möchte den Zugriff auf mein Geheimnis einschränken und nur meiner Anwendung in der Produktion erlauben. Selbst wenn ich Firewalls und virtuelle Netzwerke > Ausgewählte Netzwerke aktiviert und Microsoft-vertrauenswürdige Dienste zulassen ausgewählt habe
die Rückgabe beim Versuch, auf den Schlüssel zuzugreifen, lautet: „Der Vorgang hat einen ungültigen Statuscode ‚Verboten‘ zurückgegeben.“
Antwort1
Erstens befindet sich die Funktion „Virtual Network Service Endpoints for Key Vault“ noch in der Vorschauphase. Es wird dringend empfohlen, diese Funktion nicht in Produktionsszenarien zu verwenden.
In diesem Fall müssen Sie möglicherweise die Verbindung vom virtuellen Netzwerk oder den öffentlichen IP-Adressbereichen, in denen sich Ihre Anwendung befindet, zulassen, um die Firewall zu umgehen.
Gemäß Ihren Bildzugriffsrichtlinien verweigern Sie den Zugriff auf Datenverkehr aus allen Netzwerken. Jedem Anrufer außerhalb dieser Quellen wird der Zugriff verweigert, mit Ausnahme der StandardeinstellungenVertrauenswürdige Microsoft-Dienste. Das bedeutet, dass diese Verbindungen von diesen Diensten durch die Firewall gelassen werden, solche Anrufer jedoch noch immer ein gültiges AAD-Token vorlegen müssen und über die Berechtigung zum Ausführen des angeforderten Vorgangs verfügen müssen.
Außerdem kommt bald App Services, ich kann es im aktuellen nicht findenVertrauenswürdige Microsoft-DiensteFür App Services werden nur ASE-Instanzen (App Service Environment) unterstützt.
Referenz:Ankündigung virtueller Netzwerkdienstendpunkte für Key Vault (Vorschau)
Aktualisierung 1
DavonVerknüpfungSie haben im Kommentar angegeben.
Wenn Sie den Netzwerkzugriff auf PaaS-Ressourcen einschränken möchten, können Sie sicherstellen, dass Sie den spezifischen Service-Endpunkt Microsoft.KeyVault in Ihrem spezifischen Subnetz aktivieren. Außerdem ist das Subnetz zulässig, wenn Sie Netzwerke ausgewählt haben. Weitere Einzelheiten finden Sie hierLernprogramm.
Wenn Sie Azure Managed Service Identity in App Service verwenden, müssen Sie sicherstellen, dass Sie eine Zugriffsrichtlinie hinzugefügt haben, dieenthält die Identität Ihrer Anwendung. Beziehen aufDas.
Update 2:
Wenn Sie in diesem Fall der Web-App nur den Zugriff auf den Schlüsseltresor erlauben möchten, statt vom lokalen Netzwerk aus auf den Schlüsseltresor zuzugreifen, müssen Sie die ausgehenden IP-Adressen des Web-App-Dienstes zur Schlüsseltresor-Firewall hinzufügen.
Antwort2
Wenn Sie Managed Service Identity (MSI) mit Ihrem App-Dienst verwenden, können Sie in Ihren Key Vault-Richtlinien Zugriff auf diese Azure AD-Identität gewähren und müssen die Anmeldeinformationen nicht fest in Ihrer App codiert aufbewahren.https://azure.microsoft.com/sv-se/resources/samples/app-service-msi-keyvault-dotnet/
Um den Netzwerk-/Endpunktzugriff auf Ihren Schlüsseltresor einzuschränken, hat Nancy die richtige Antwort: „Microsoft Trusted Services“. Lauthttps://docs.microsoft.com/en-us/azure/key-vault/key-vault-overview-vnet-service-endpointsApp-Dienst ist ein vertrauenswürdiger Dienst für Key Vault.