Az Azure App Service hozzáférés-korlátozásainak beállítása
Feljegyzés
2024. június 1-től az összes újonnan létrehozott App Service-alkalmazás létrehozhat egy egyedi alapértelmezett gazdagépnevet az elnevezési konvencióval <app-name>-<random-hash>.<region>.azurewebsites.net
. A meglévő alkalmazásnevek változatlanok maradnak.
Példa: myapp-ds27dh7271aah175.westus-01.azurewebsites.net
További részletekért tekintse meg az App Service-erőforrás egyedi alapértelmezett gazdagépnevét.
A hozzáférési korlátozások beállításával meghatározhat egy prioritás szerinti engedélyezési/letiltási listát, amely szabályozza az alkalmazásához való hálózati hozzáférést. A lista IP-címekből vagy Azure-beli virtuális hálózatok alhálózataiból állhat. Egy vagy több bejegyzés esetén az implicit megtagadás a lista végén található. A hozzáférési korlátozásokkal kapcsolatos további információkért tekintse meg a hozzáférési korlátozások áttekintését.
A hozzáférés-korlátozási képesség minden Azure App Service által üzemeltetett számítási feladattal működik. A számítási feladatok közé webalkalmazások, API-alkalmazások, Linux-alkalmazások, egyéni Linux-tárolók és függvények tartozhatnak.
Amikor kérelem érkezik az alkalmazásához, a FROM cím kiértékelése a hozzáférés-korlátozási listában szereplő szabályok alapján történik. Ha a FROM cím egy szolgáltatásvégpontokkal Microsoft.Web
konfigurált alhálózatban van, a rendszer összehasonlítja a forrás alhálózatot a hozzáférés-korlátozási lista virtuális hálózati szabályaival. Ha a cím nem érhető el a listában szereplő szabályok alapján, a szolgáltatás EGY HTTP 403 állapotkóddal válaszol.
A hozzáférés-korlátozási képesség az App Service előtérbeli szerepköreiben van implementálva, amelyek a kód futtatását végző feldolgozó gazdagépek felső rétegében találhatók. Ezért a hozzáférési korlátozások tulajdonképpen hálózati hozzáférés-vezérlési listák (ACL-ek).
A webalkalmazás azure-beli virtuális hálózatról való hozzáférésének korlátozása szolgáltatásvégpontokat használ. A szolgáltatásvégpontok segítségével korlátozhatja a többszemélyes szolgáltatáshoz való hozzáférést a kiválasztott alhálózatokból. Az App Service Environment-környezetekben üzemeltetett alkalmazások felé irányuló forgalom korlátozása nem működik. Az App Service Environment-környezetekben IP-címszabályok alkalmazásával szabályozhatja az alkalmazásához való hozzáférést.
Feljegyzés
A szolgáltatásvégpontokat engedélyezni kell a hálózatkezelési oldalon és az Azure-szolgáltatásban is, amellyel engedélyezve vannak. A szolgáltatásvégpontokat támogató Azure-szolgáltatások listáját a Virtuális hálózati szolgáltatásvégpontok című témakörben találja.
Hozzáférés-korlátozási szabályok kezelése a portálon
Ha hozzáférés-korlátozási szabályt szeretne hozzáadni az alkalmazáshoz, hajtsa végre az alábbi lépéseket:
Jelentkezzen be az Azure Portalra.
Válassza ki azt az alkalmazást, amelyhez hozzáférési korlátozásokat szeretne hozzáadni.
A bal oldali menüben válassza a Hálózatkezelés lehetőséget.
A Hálózatkezelés lapon, a Bejövő forgalom konfigurációja területen válassza a Nyilvános hálózat hozzáférési beállítását.
A Hozzáférés-korlátozások lapon tekintse át az alkalmazáshoz definiált hozzáférés-korlátozási szabályok listáját.
A lista megjeleníti az alkalmazásra alkalmazott összes jelenlegi korlátozást. Ha az alkalmazásra vonatkozó virtuális hálózati korlátozás van érvényben, a táblázat azt mutatja, hogy a szolgáltatásvégpontok engedélyezve vannak-e a Microsoft.Web számára. Ha az alkalmazás nem határoz meg korlátozásokat, és a nem egyező szabály nincs letiltva, az alkalmazás bárhonnan elérhető.
Engedélyek
Az alábbi szerepköralapú hozzáférés-vezérlési engedélyekre van szükség az alhálózaton vagy magasabb szinten a hozzáférési korlátozások Azure Portalon, parancssori felületen vagy közvetlenül a webhely konfigurációs tulajdonságainak beállításakor:
Művelet | Leírás |
---|---|
Microsoft.Web/sites/config/read | Webalkalmazás konfigurációs beállításainak lekérése |
Microsoft.Web/sites/config/write | A webalkalmazás konfigurációs beállításainak frissítése |
Microsoft.Network/virtualNetworks/alhálózatok/joinViaServiceEndpoint/action* | Erőforrás, például tárfiók vagy SQL-adatbázis csatlakoztatása alhálózathoz |
Microsoft.Web/sites/write** | Webalkalmazás beállításainak frissítése |
*csak virtuális hálózati (szolgáltatásvégpont) szabály hozzáadásakor szükséges.
**csak akkor szükséges, ha az Azure Portalon keresztül frissíti a hozzáférési korlátozásokat.
Ha szolgáltatásvégpont-alapú szabályt ad hozzá, és a virtuális hálózat az alkalmazástól eltérő előfizetésben van, győződjön meg arról, hogy a virtuális hálózat előfizetése regisztrálva van az Microsoft.Web
erőforrás-szolgáltatónál. A szolgáltatót kifejezetten regisztrálhatja a jelen dokumentáció alapján, de automatikusan regisztrálhatja is az első webalkalmazás előfizetésben való létrehozásakor.
Hozzáférés-korlátozási szabály hozzáadása
Ha hozzáférés-korlátozási szabályt szeretne hozzáadni az alkalmazáshoz, a Hozzáférési korlátozások lapon válassza a Hozzáadás lehetőséget. A szabály csak mentés után érvényes.
A szabályok prioritási sorrendben lesznek érvényesítve, a Prioritás oszlop legalacsonyabb számától kezdve. Ha nem konfigurálja a nem egyező szabályt, az implicit megtagadás az egyetlen szabály hozzáadása után is érvényben van.
A Hozzáférés-korlátozás hozzáadása panelen, amikor létrehoz egy szabályt, tegye a következőket:
A Művelet csoportban válassza az Engedélyezés vagy a Megtagadás lehetőséget.
Ha szeretné, adja meg a szabály nevét és leírását.
A Prioritás mezőbe írjon be egy prioritásértéket.
A Típus legördülő listában válassza ki a szabály típusát. A különböző szabályok típusait a következő szakaszok ismertetik.
Válassza a Szabály hozzáadása lehetőséget, miután beírta a szabályspecifikus bemenetet, hogy hozzáadja a szabályt a listához.
Végül válassza a Mentés vissza gombot a Hozzáférési korlátozások lapon.
Feljegyzés
- A hozzáférés-korlátozási szabályok száma 512. Ha több mint 512 hozzáférés-korlátozási szabályra van szüksége, javasoljuk, hogy fontolja meg egy különálló biztonsági termék, például az Azure Front Door, Azure-alkalmazás Gateway vagy egy alternatív WAF telepítését.
IP-címalapú szabály beállítása
Kövesse az előző szakaszban ismertetett eljárást, de a következő kiegészítéssel:
- A 4. lépésben a Típus legördülő listában válassza az IPv4 vagy az IPv6 lehetőséget.
Adja meg az IP-címblokkot az osztály nélküli tartományközi útválasztás (CIDR) jelölésében mind az IPv4, mind az IPv6-címek esetében. Cím megadásához használhat 1.2.3.4/32-hez hasonlót, ahol az első négy oktett az ÖN IP-címét jelöli, a /32 pedig a maszkot. Az összes cím IPv4 CIDR-jelölése 0.0.0.0/0. A CIDR jelöléséről további információt az Osztály nélküli tartományközi útválasztás című témakörben talál.
Feljegyzés
Az IP-alapú hozzáférés-korlátozási szabályok csak akkor kezelik a virtuális hálózati címtartományokat, ha az alkalmazás App Service-környezetben van. Ha az alkalmazás a több-bérlős szolgáltatásban található, szolgáltatásvégpontok használatával kell korlátoznia a forgalmat a virtuális hálózat alhálózatainak kiválasztásához.
Szolgáltatásvégpont-alapú szabály beállítása
A 4. lépésben a Típus legördülő listában válassza a Virtuális hálózat lehetőséget.
Adja meg az előfizetés, a virtuális hálózat és az alhálózat legördülő listáját, és egyeztessen azzal, amelyhez korlátozni szeretné a hozzáférést.
Szolgáltatásvégpontok használatával korlátozhatja a hozzáférést a kiválasztott Azure-beli virtuális hálózati alhálózatokhoz. Ha a szolgáltatásvégpontok még nincsenek engedélyezve a kijelölt alhálózaton Microsoft.Web
, akkor azok automatikusan engedélyezve lesznek, kivéve, ha bejelöli a Hiányzó Microsoft.Web
szolgáltatásvégpontok figyelmen kívül hagyása jelölőnégyzetet. Az a forgatókönyv, amelyben lehet, hogy engedélyezni szeretné a szolgáltatásvégpontokat az alkalmazásban, de az alhálózatot nem, főként attól függ, hogy rendelkezik-e az alhálózaton való engedélyezéséhez szükséges engedélyekkel.
Ha másra van szüksége a szolgáltatásvégpontok alhálózaton való engedélyezéséhez, jelölje be a Hiányzó Microsoft.Web szolgáltatásvégpontok figyelmen kívül hagyása jelölőnégyzetet. Az alkalmazás szolgáltatásvégpontokhoz van konfigurálva, annak érdekében, hogy később engedélyezve legyenek az alhálózaton.
Szolgáltatásvégpontok használatával nem korlátozhatja az App Service-környezetben futó alkalmazásokhoz való hozzáférést. Ha az alkalmazás App Service-környezetben van, IP-hozzáférési szabályok alkalmazásával szabályozhatja a hozzáférését.
A szolgáltatásvégpontok használatával az alkalmazást alkalmazásátjárókkal vagy más webalkalmazási tűzfaleszközökkel (WAF) konfigurálhatja. Többrétegű alkalmazásokat is konfigurálhat biztonságos háttérrendszerrel. További információ: Hálózatkezelési funkciók, valamint az App Service és az Application Gateway integrációja a szolgáltatásvégpontokkal.
Feljegyzés
- A szolgáltatásvégpontok nem támogatottak az IP-alapú TLS-/SSL-kötéseket virtuális IP-címmel (VIP) használó webalkalmazások esetében.
Szolgáltatáscímke-alapú szabály beállítása
A 4. lépésben a Típus legördülő listában válassza a Szolgáltatáscímke lehetőséget.
A hozzáférés-korlátozási szabályok minden elérhető szolgáltatáscímkét támogatnak. Minden szolgáltatáscímke az Azure-szolgáltatások IP-tartományainak listáját jelöli. Az említett szolgáltatások listája, valamint a tartományokra mutató hivatkozások a szolgáltatáscímkékről szóló dokumentációban találhatók. Az Azure Resource Manager-sablonok vagy szkriptek használatával speciálisabb szabályokat, például regionális hatókörű szabályokat konfigurálhat.
Szabály szerkesztése
Meglévő hozzáférés-korlátozási szabály szerkesztésének megkezdéséhez a Hozzáférési korlátozások lapon válassza ki a szerkeszteni kívánt szabályt.
A Hozzáférés-korlátozás szerkesztése panelen végezze el a módosításokat, majd válassza a Szabály frissítése lehetőséget.
A módosítások mentéséhez válassza a Mentés lehetőséget.
Feljegyzés
Szabály szerkesztésekor nem válthat a szabálytípusok között.
Szabály törlése
Szabály törléséhez a Hozzáférési korlátozások lapon ellenőrizze a törölni kívánt szabályt vagy szabályokat, majd válassza a Törlés lehetőséget.
A módosítások mentéséhez válassza a Mentés lehetőséget.
Hozzáférés-korlátozás – speciális forgatókönyvek
A következő szakaszok a hozzáférési korlátozásokat használó speciális forgatókönyveket ismertetik.
Szűrés http-fejléc szerint
Bármely szabály részeként hozzáadhat http-fejlécszűrőket. A következő HTTP-fejlécnevek támogatottak:
- X-Forwarded-for
- X-Forwarded-Host
- X-Azure-FDID
- X-FD-HealthProbe
Minden fejlécnévhez legfeljebb nyolc értéket adhat hozzá vesszővel elválasztva. A http fejlécszűrők kiértékelése a szabály után történik, és mindkét feltételnek igaznak kell lennie a szabály alkalmazásához.
Többforrásos szabályok
A több forrásból származó szabályokkal akár nyolc IP-tartomány vagy nyolc szolgáltatáscímke is használható egyetlen szabályban. Ha több mint 512 IP-címtartományt használ, vagy logikai szabályokat szeretne létrehozni, több forrásból is használhatja a szabályokat. Logikai szabályok lehetnek, ahol több IP-tartományt egyesít egyetlen HTTP-fejlécszűrővel.
A több forrásból álló szabályok ugyanúgy vannak definiálva, mint az egyforrásos szabályok, de az egyes tartományok vesszővel vannak elválasztva.
PowerShell-példa:
Add-AzWebAppAccessRestrictionRule -ResourceGroupName "ResourceGroup" -WebAppName "AppName" `
-Name "Multi-source rule" -IpAddress "192.168.1.0/24,192.168.10.0/24,192.168.100.0/24" `
-Priority 100 -Action Allow
Egyetlen IP-cím letiltása
Olyan forgatókönyv esetén, amikor egy IP-címet vagy IP-címblokkot szeretne explicit módon letiltani, de minden máshoz engedélyezni szeretné a hozzáférést, adjon hozzá egy megtagadási szabályt az adott IP-címhez, és konfigurálja a nem egyező szabályműveletet engedélyezésre.
SCM-webhelyhez való hozzáférés korlátozása
Amellett, hogy szabályozhatja az alkalmazáshoz való hozzáférést, korlátozhatja az alkalmazás által használt SCM(Speciális eszköz) webhelyhez való hozzáférést. Az SCM-webhely mind a webes üzembehelyezési végpont, mind a Kudu-konzol. Az alkalmazásból külön rendelhet hozzáférési korlátozásokat az SCM-webhelyhez, vagy ugyanazokat a korlátozásokat használhatja mind az alkalmazás, mind az SCM-webhely esetében. Ha bejelöli a Fő hely szabályainak használata jelölőnégyzetet, a szabálylista rejtett, és a fő hely szabályaira van szükség. Ha törli a jelet a jelölőnégyzetből, az SCM-webhely beállításai újra megjelennek.
Hozzáférés korlátozása egy adott Azure Front Door-példányhoz
Az Azure Front Doorból az alkalmazásba irányuló forgalom a szolgáltatáscímkében AzureFrontDoor.Backend
meghatározott, jól ismert IP-tartományokból származik. Szolgáltatáscímke-korlátozási szabály használatával korlátozhatja, hogy a forgalom csak az Azure Front Doorból származjon. Annak érdekében, hogy a forgalom csak az adott példányból származhasson, az Azure Front Door által küldött egyedi HTTP-fejléc alapján tovább kell szűrnie a bejövő kéréseket.
PowerShell-példa:
$afd = Get-AzFrontDoor -Name "MyFrontDoorInstanceName"
Add-AzWebAppAccessRestrictionRule -ResourceGroupName "ResourceGroup" -WebAppName "AppName" `
-Name "Front Door example rule" -Priority 100 -Action Allow -ServiceTag AzureFrontDoor.Backend `
-HttpHeader @{'x-azure-fdid' = $afd.FrontDoorId}
Hozzáférés-korlátozás programozott kezelése
A hozzáférés-korlátozásokat programozott módon kezelheti, az alábbiakban példákat talál arra, hogyan adhat hozzá szabályokat a hozzáférési korlátozásokhoz, és hogyan módosíthatja a nem egyező szabályműveleteket mind a főwebhely, mind a Speciális eszközwebhely esetében.
Hozzáférés-korlátozási szabályok hozzáadása a főwebhelyhez
A főwebhelyhez programozott módon adhat hozzá hozzáférési korlátozási szabályokat az alábbi lehetőségek egyikének kiválasztásával:
Az alábbi parancsot a Cloud Shellben futtathatja. A parancsokkal kapcsolatos az webapp config access-restriction
további információkért látogasson el erre a lapra.
az webapp config access-restriction add --resource-group ResourceGroup --name AppName \
--rule-name 'IP example rule' --action Allow --ip-address 122.133.144.0/24 --priority 100
az webapp config access-restriction add --resource-group ResourceGroup --name AppName \
--rule-name "Azure Front Door example" --action Allow --priority 200 --service-tag AzureFrontDoor.Backend \
--http-header x-azure-fdid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Hozzáférés-korlátozási szabályok hozzáadása speciális eszközwebhelyhez
A Speciális eszközwebhelyhez programozott módon adhat hozzá hozzáférési korlátozási szabályokat az alábbi lehetőségek egyikének kiválasztásával:
Az alábbi parancsot a Cloud Shellben futtathatja. A parancsokkal kapcsolatos az webapp config access-restriction
további információkért látogasson el erre a lapra.
az webapp config access-restriction add --resource-group ResourceGroup --name AppName \
--rule-name 'IP example rule' --action Allow --ip-address 122.133.144.0/24 --priority 100 --scm-site true
A fő hely nem egyező szabályműveletének módosítása
A főwebhely nem egyező szabályműveletét programozott módon módosíthatja az alábbi lehetőségek egyikének kiválasztásával:
Az alábbi parancsot a Cloud Shellben futtathatja. A parancsokkal kapcsolatos az resource
további információkért látogasson el erre a lapra. Az elfogadott értékek a következők Allow
Deny
vagy ipSecurityRestrictionsDefaultAction
.
az resource update --resource-group ResourceGroup --name AppName --resource-type "Microsoft.Web/sites" \
--set properties.siteConfig.ipSecurityRestrictionsDefaultAction=Allow
A speciális eszközwebhely nem egyező szabályműveletének módosítása
A Speciális eszközwebhely nem egyező szabályműveletét programozott módon módosíthatja az alábbi lehetőségek egyikének kiválasztásával:
Az alábbi parancsot a Cloud Shellben futtathatja. A parancsokkal kapcsolatos az resource
további információkért látogasson el erre a lapra. Az elfogadott értékek a következők Allow
Deny
vagy scmIpSecurityRestrictionsDefaultAction
.
az resource update --resource-group ResourceGroup --name AppName --resource-type "Microsoft.Web/sites" \
--set properties.siteConfig.scmIpSecurityRestrictionsDefaultAction=Allow
Az Azure Functions hozzáférési korlátozásainak beállítása
A hozzáférési korlátozások az App Service-csomagokkal azonos funkcionalitású függvényalkalmazások esetében is elérhetők. Ha engedélyezi a hozzáférési korlátozásokat, letiltja az Azure Portal kódszerkesztőt a letiltott IP-címek esetében is.
Következő lépések
Az Azure Functions hozzáférési korlátozásai
Az Application Gateway integrációja szolgáltatásvégpontokkal
Speciális hozzáférés-korlátozási forgatókönyvek a Azure-alkalmazás Szolgáltatásban – blogbejegyzés