Wir verfügen über eine Web-App, die in Azure als App-Service bereitgestellt wird. Wir möchten den Zugriff darauf beschränken, indem wir eine weiße Liste mit IP-Adressen erstellen, die in einer Azure App Service-Einstellung und nicht in web.config
, die wir im Projekt haben, vorgenommen werden können.So schränken Sie den Zugriff auf einen App-Service mithilfe einer Einstellung im Azure-Portal ein
Gegenwärtig beschränken wir so die Beschränkung der IP-Adresse in unseren Umgebungen.
- Produktion: Wir haben VNet Integration Setup für den App-Service. Wir haben eine
NSG
an dieVNet's
Subnet
angeschlossen und von derNSG
können wir eingehenden und ausgehenden Zugriff steuern. Inszenierung: Wir haben folgenden Block der Konfiguration in unserem
web.config
, die die weißen Liste IP-Adressen enthalten, die berechtigt sind, den App-Service in unserem Staging-Server zugreifen zu können.<security> <ipSecurity allowUnlisted="false" denyAction="NotFound"> <add allowed="true" ipAddress="some ip address" subnetMask="255.255.255.254"></add> <add allowed="true" ipAddress="some ip address" subnetMask="255.255.255.254"></add> </ipSecurity> </security>
Entwicklung (lokal): Wir haben den
<security>
Konfigurationsblock in unseren lokalen Entwicklungsmaschinen Kommentar- Coz wir es nicht wirklich brauchen. Und es verursacht einen Fehler, siehe Screenshot unten.
Dies ist einige der Inhalt des HttpFailre_09-07-33.html
Module IpRestrictionModule
Notification BeginRequest
Handler aspNetCore
Error Code 0x80070021
Config Error This configuration section cannot be used at this path. This happens when the section is locked at a parent level. Locking is either by default (overrideModeDefault="Deny"), or set explicitly by a location tag with overrideMode="Deny" or the legacy allowOverride="false".
Wir möchten ganz diesen <security>
Block von web.config entfernen, weil aus einem anderen Grund Wir möchten nicht, dass die IP-Adressen die Produktion erreichen.
Und auch, wir dürfen nicht VNet-Integration in unserem Staging-Server (Management-Zeug, duh! Kostensenkung was auch immer!).
Gibt es eine Möglichkeit, IP-Adressen in Azure App Service einzuschränken?
Danke dafür! Ich entschied mich, # 2 zu verwenden, wo ich die 'ipRestriction' Werte direkt im' Azure Resource Explorer' hinzufüge. Ich habe jedoch eine Frage, behält es die "ipRestriction" -Werte, selbst wenn ich eine neue "web.config" bereitstellen? Ich habe gerade eine Bereitstellung durchgeführt und es hat sich nicht geändert, ich möchte nur bestätigen :) Wenn es sich bei jeder Bereitstellung ändert, muss ich möglicherweise PowerShell-Skripte verwenden, um 'ipRestrictions' zu setzen. – jmc
Aus meiner Erfahrung wird empfohlen, PowerShell-Skript zu verwenden das zu tun. –
Ok, eine letzte Frage bitte. Wo empfiehlst du, dass ich das PowerShell-Skript einfüge? Ich denke an zwei Stellen - 1.) Innerhalb 'project.json' werde ich eine' postpublish' Aktion hinzufügen, um das Skript auszuführen ODER 2.) Innerhalb der 'PublishProfiles' kann ich eine' .ps1' Datei oder einfach hinzufügen setze die Skripte direkt in das generierte 'publish-module.psm1' – jmc