Azure-alkalmazás szolgáltatáshozzáférés korlátozásai

Az App Service hozzáférési korlátozásai egyenértékűek a tűzfallal, amely lehetővé teszi a forgalom blokkolását és szűrését. A hozzáférési korlátozások csak a bejövő hozzáférésre vonatkoznak. A legtöbb App Service-tarifacsomag privát végpontokat is hozzáadhat az alkalmazáshoz, ami egy másik belépési pont az alkalmazáshoz. A hozzáférési korlátozások nem vonatkoznak a privát végponton bejutó forgalomra. Az App Service-ben üzemeltetett összes alkalmazás esetében az alapértelmezett belépési pont nyilvánosan elérhető. Az egyetlen kivétel az ILB App Service-környezetben üzemeltetett alkalmazások, ahol az alapértelmezett belépési pont a virtuális hálózaton belül van.

Hogyan működik?

Amikor a forgalom eléri az App Service-t, először kiértékeli, hogy a forgalom privát végpontról származik-e, vagy az alapértelmezett végponton keresztül érkezik-e. Ha a forgalmat privát végponton keresztül küldi el, korlátozás nélkül közvetlenül a webhelyre küldi. A privát végpontokra vonatkozó korlátozások hálózati biztonsági csoportok használatával vannak konfigurálva.

Ha az alapértelmezett végponton (gyakran nyilvános végponton) keresztül küld forgalmat, a rendszer először az alkalmazás hozzáférési szintjén értékeli ki a forgalmat. Itt engedélyezheti vagy letilthatja a hozzáférést. Ha engedélyezi az alkalmazáshozzáférést, a forgalom a helyhozzáférés szintjén lesz kiértékelve. Bármely alkalmazás esetében a főwebhely és a speciális eszközök webhelye (más néven scm vagy kudu webhely) is elérhető.

Lehetősége van az egyes helyek hozzáférés-korlátozási szabályainak konfigurálására. A hozzáférés-korlátozási szabályok kiértékelése prioritási sorrendben történik. Ha egyes szabályok prioritása azonos, a rendszer a rendezés előtt az Azure Resource Manager API-ból és az Azure Portalon visszaadott sorrendben értékeli ki őket. A viselkedést akkor is megadhatja, ha nincsenek egyező szabályok. A következő szakaszok részletesen ismertetik a részleteket.

Diagram of access restrictions high-level flow.

Alkalmazás-hozzáférés

Az alkalmazáshozzáférés lehetővé teszi annak konfigurálását, hogy a hozzáférés elérhető-e az alapértelmezett (nyilvános) végponton keresztül. Ezt a viselkedést úgy konfigurálhatja, hogy legyen Disabled vagy Enabled. Ha a hozzáférés engedélyezve van, webhelyhozzáférés-korlátozási szabályokat adhat hozzá a kiválasztott virtuális hálózatok és IP-címek hozzáférésének szabályozásához. Ha a beállítás nincs konfigurálva, az alapértelmezett viselkedés az, hogy engedélyezi a hozzáférést, kivéve, ha létezik egy privát végpont, amely módosítja a viselkedést a hozzáférés letiltásához.

Screenshot of app access option in Azure portal.

Az Azure Resource Manager API-ban az alkalmazáshozzáférés neve publicNetworkAccess. Az ILB App Service Environment esetében az alkalmazások alapértelmezett belépési pontja mindig a virtuális hálózaton belül van. Az alkalmazáshozzáférés (publicNetworkAccess) engedélyezése nem biztosít közvetlen nyilvános hozzáférést az alkalmazásokhoz; ehelyett engedélyezi a hozzáférést az alapértelmezett belépési pontról, amely megfelel az App Service-környezet belső IP-címének. Ha letiltja az alkalmazások elérését egy ILB App Service-környezetben, az alkalmazásokat csak az egyes alkalmazásokhoz hozzáadott privát végpontokon keresztül érheti el.

Webhely-hozzáférés

A webhely-hozzáférési korlátozások lehetővé teszik a bejövő kérések szűrését. A webhely-hozzáférési korlátozások lehetővé teszik a prioritási sorrendben kiértékelt engedélyezési és megtagadási szabályok listájának összeállítását. Hasonló az Azure-hálózatkezelés hálózati biztonsági csoportjának (NSG) funkcióhoz.

Screenshot of site access options in Azure portal.

A webhelyhozzáférés korlátozása többféle szabályt is alkalmazhat:

Nem egyező szabály

A viselkedést akkor konfigurálhatja, ha nincsenek egyező szabályok (az alapértelmezett művelet). Ez egy speciális szabály, amely mindig a szabálygyűjtemény utolsó szabályaként jelenik meg. Ha a beállítás nincs konfigurálva, a nem egyező szabály viselkedése a konfigurált szabályoktól függ. Ha nincsenek szabályok, a nem egyező szabály viselkedése az, hogy engedélyezi az összes hozzáférést, de ha egy vagy több szabály létezik, implicit módon megváltozik, hogy megtagadja az összes hozzáférést. Ezt a viselkedést explicit módon úgy konfigurálhatja, hogy a megadott szabályoktól függetlenül engedélyezze vagy megtagadja a hozzáférést.

IP-alapú hozzáférés-korlátozási szabályok

Az IP-alapú hozzáférés korlátozásai funkció segít, ha korlátozni szeretné az alkalmazás eléréséhez használható IP-címeket. Az IPv4 és az IPv6 is támogatott. A funkció néhány használati esete:

  • Az alkalmazáshoz való hozzáférés korlátozása jól definiált címek készletéből.
  • Korlátozza a külső terheléselosztási szolgáltatáson vagy más ismert kimenő IP-címmel rendelkező hálózati berendezéseken keresztül érkező forgalomhoz való hozzáférést.

A funkció engedélyezésének módjáról a hozzáférési korlátozások konfigurálásáról olvashat.

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.

Hozzáférés-korlátozási szabályok szolgáltatásvégpontok alapján

A szolgáltatásvégpontok lehetővé teszik az alkalmazás bejövő hozzáférésének zárolását, így a forráscímnek a kiválasztott alhálózatokból kell származnia. Ez a funkció az IP-hozzáférési korlátozásokkal együtt működik. A szolgáltatásvégpontok nem kompatibilisek a távoli hibakereséssel. Ha távoli hibakeresést szeretne használni az alkalmazással, az ügyfél nem lehet olyan alhálózaton, amelyen engedélyezve vannak a szolgáltatásvégpontok. A szolgáltatásvégpontok beállításának folyamata hasonló az IP-hozzáférési korlátozások beállításának folyamatához. Létrehozhat egy engedélyezési/megtagadási listát a virtuális hálózatok nyilvános címeit és alhálózatait tartalmazó hozzáférési szabályokról.

Feljegyzés

A szolgáltatásvégpontokon alapuló hozzáférés-korlátozási szabályok nem támogatottak a privát végponttal rendelkező alkalmazásokban vagy az IP-alapú SSL-t (alkalmazás által hozzárendelt címet) használó alkalmazásokban.

A szolgáltatásvégpontok alkalmazással való konfigurálásáról további információt Azure-alkalmazás Szolgáltatáshozzáférési korlátozások című témakörben talál.

Bármely szolgáltatásvégpont-forrás

Teszteléshez vagy adott helyzetekben bármely szolgáltatásvégpont által engedélyezett alhálózatról engedélyezheti a forgalmat. Ezt úgy teheti meg, hogy IP-alapú szabályt határoz meg az "AnyVnets" szöveggel az IP-tartomány helyett. Ezeket a szabályokat nem hozhatja létre a portálon, de módosíthatja a meglévő IP-alapú szabályt, és lecserélheti az IP-címet az "AnyVnets" sztringre.

Hozzáférés-korlátozási szabályok szolgáltatáscímkék alapján

Az Azure-szolgáltatáscímkék jól definiált IP-címkészletek az Azure-szolgáltatásokhoz. A szolgáltatáscímkék csoportosítják a különböző Azure-szolgáltatásokban használt IP-címtartományokat, és gyakran adott régiókra is kiterjednek. Ez a szabálytípus lehetővé teszi adott Azure-szolgáltatások bejövő forgalmának szűrését.

A címkék teljes listájáért és további információkért látogasson el a szolgáltatáscímke hivatkozására.

A funkció engedélyezésének módjáról a hozzáférési korlátozások konfigurálásáról olvashat.

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, több forrásból is használhat szabályokat. Több forrásból álló szabályokat is használhat, ha olyan logikai szabályokat szeretne létrehozni, amelyek több IP-tartományt kombinálnak 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.

Ezeket a szabályokat nem hozhatja létre a portálon, de módosíthatja a meglévő szolgáltatáscímkét vagy IP-alapú szabályt, és további forrásokat adhat hozzá a szabályhoz.

Http-fejlécszűrés webhelyhozzáférési korlátozási szabályokhoz

Bármilyen szabályhoz hozzáadhat http-fejlécszűrést, típustól függetlenül. A HTTP-fejlécszűrők lehetővé teszik a bejövő kérés további vizsgálatát és szűrését adott HTTP-fejlécértékek alapján. Minden fejléc legfeljebb nyolc értékkel rendelkezhet szabályonként. A támogatott HTTP-fejlécek a következők:

  • X-Forwarded-for. Standard fejléc egy proxykiszolgálón keresztül csatlakozó ügyfél származó IP-címének azonosításához. Érvényes CIDR-értékeket fogad el.
  • X-Forwarded-Host. Standard fejléc az ügyfél által kért eredeti gazdagép azonosításához. Legfeljebb 64 karakter hosszúságú sztringeket fogad el.
  • X-Azure-FDID. Egyéni fejléc a fordított proxypéldány azonosításához. Az Azure Front Door egy guidt küld a példány azonosításához, de a nem Microsoft-proxyk esetében is használható az adott példány azonosítására. Legfeljebb 64 karakter hosszúságú sztringeket fogad el.
  • X-FD-HealthProbe. Egyéni fejléc a fordított proxy állapotmintájának azonosításához. Az Azure Front Door "1" üzenetet küld egy állapotadat-mintavételi kérelem egyedi azonosításához. A fejléc nem Microsoft-proxykhoz is használható az állapotadat-mintavételek azonosításához. Legfeljebb 64 karakter hosszúságú sztringeket fogad el.

A HTTP-fejlécek szűrésének néhány használati esete a következő:

  • A gazdagép nevét továbbító proxykiszolgálók forgalmának korlátozása
  • Egy adott Azure Front Door-példányhoz való hozzáférés korlátozása szolgáltatáscímke-szabállyal és X-Azure-FDID fejléckorlátozással

Diagnosztikai naplózás

Az App Service különböző naplózási kategóriákat küldhet az Azure Monitornak. Az ilyen kategóriák egyikét meghívják IPSecurity Audit logs , és a hozzáférési korlátozásokban szereplő tevékenységeket jelölik. A rendszer naplózza a szabálynak megfelelő összes kérelmet (kivéve a nem egyező szabályt), mind az engedélyezést, mind a megtagadásokat, és használható a hozzáférési korlátozások konfigurálásának ellenőrzésére. A naplózási funkció a szabályok konfigurálásának hibaelhárítása során is hatékony eszköz.

Speciális használati esetek

A fenti funkciók kombinálásával az alábbi szakaszokban ismertetett konkrét használati eseteket oldhatja meg.

Egyetlen IP-cím letiltása

Ha egy vagy több konkrét IP-címet szeretne megtagadni/letiltani, az IP-címeket megtagadási szabályként is hozzáadhatja, és konfigurálhatja a nem egyező szabályt, hogy az összes nem egyező forgalmat engedélyezze.

A speciális eszközök webhelyhez való hozzáférés korlátozása

A speciális eszközök webhelye, amely más néven scm vagy kudu, egy egyéni szabálygyűjteményt is tartalmazhat, amelyet konfigurálhat. A webhely nem egyező szabályát is konfigurálhatja. A beállításokkal a fő helyhez konfigurált szabályokat használhatja. Bizonyos speciális eszközwebhely-funkciókhoz nem engedélyezheti szelektíven a hozzáférést. Például nem engedélyezheti szelektíven a hozzáférést csak a WebJobs felügyeleti konzolhoz a speciális eszközök webhelyén.

Üzembe helyezés privát végponton keresztül

Előfordulhat, hogy van egy nyilvánosan elérhető webhelye, de az üzembehelyezési rendszer egy virtuális hálózaton található. Az üzembehelyezési forgalmat privát végpont hozzáadásával privátan tarthatja. Ezután meg kell győződnie arról, hogy a nyilvános alkalmazás hozzáférése engedélyezve van. Végül meg kell adnia a speciális eszközök webhelyének nem egyező szabályát elutasításra, amely blokkolja az adott végpontra irányuló összes nyilvános forgalmat.

Külső partner hozzáférésének engedélyezése a privát végpont által védett helyekhez

Ebben a forgatókönyvben egy privát végponton keresztül éri el a webhelyet, és egy privát végponton keresztül telepít. Ideiglenesen meghívhat egy külső partnert a webhely tesztelésére. Ezt a nyilvános alkalmazáshozzáférés engedélyezésével teheti meg. Adjon hozzá egy szabályt (IP-alapú) a partner ügyfélének azonosításához. Konfiguráljon nem egyező szabályműveletet a fő és a speciális eszközök helyének elutasítására.

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, tovább kell szűrnie a bejövő kéréseket az Azure Front Door által X-Azure-FDID néven küldött egyedi HTTP-fejléc alapján. A portálon megtalálja a Front Door azonosítóját.

Következő lépések

Feljegyzés

A webhely nyilvános elérését letiltó hozzáférés-korlátozási szabályok blokkolhatják az olyan szolgáltatásokat is, mint a naplóstreamelés. Ha ezekre van szüksége, engedélyeznie kell az App Service IP-címét a korlátozásokban.