Az Azure App Service hozzáférés-korlátozásainak beállítása

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.Webkonfigurá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.

Diagram of the flow of access restrictions.

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:

  1. Jelentkezzen be az Azure Portalra.

  2. Válassza ki azt az alkalmazást, amelyhez hozzáférési korlátozásokat szeretne hozzáadni.

  3. A bal oldali menüben válassza a Hálózatkezelés lehetőséget.

  4. 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.

    Screenshot of the App Service networking options page in the Azure portal.

  5. 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.

    Screenshot of the Access Restrictions page in the Azure portal, showing the list of access restriction rules defined for the selected app.

    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ő.

Jogosultságok

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:

  1. A Művelet csoportban válassza az Engedélyezés vagy a Megtagadás lehetőséget.

    Screenshot of the 'Add Access Restriction' pane.

  2. Ha szeretné, adja meg a szabály nevét és leírását.

  3. A Prioritás mezőbe írjon be egy prioritásértéket.

  4. 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.

  5. 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.

    Screenshot of the 'Add Restriction' pane with the Virtual Network type selected.

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.

    Screenshot of the 'Add Restriction' pane with the Service Tag type selected.

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

  1. 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.

  2. 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.

  3. A módosítások mentéséhez válassza a Mentés lehetőséget.

    Screenshot of the 'Edit Access Restriction' pane in the Azure portal, showing the fields for an existing access restriction rule.

    Feljegyzés

    Szabály szerkesztésekor nem válthat a szabálytípusok között.

Szabály törlése

  1. 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.

  2. A módosítások mentéséhez válassza a Mentés lehetőséget.

Screenshot of the 'Access Restrictions' page, showing the 'Remove' ellipsis next to the access restriction rule to be deleted.

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.

Screenshot of the 'Access Restrictions' page in the Azure portal, showing a single blocked IP address.

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.

Screenshot of the 'Access Restrictions' page in the Azure portal, showing that no access restrictions are set for the SCM site or the app.

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.

Screenshot of the 'Access Restrictions' page in the Azure portal, showing how to add Azure Front Door restriction.

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 AllowDenyvagy 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 AllowDenyvagy 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