Megosztás a következőn keresztül:


Az Application Gateway háttérrendszerének beállításainak konfigurálása

A háttérbeállítások lehetővé teszik az Application Gateway-erőforrásból létrehozott háttérkapcsolatok konfigurációinak kezelését a háttérkészlet egy kiszolgálója felé. A háttérbeállítások konfigurációja egy vagy több útválasztási szabályhoz társítható.

Háttérbeállítások típusai az Application Gatewayben

Míg a Portál felhasználói csak a "Háttérbeállítások" lehetőséget látják, az API-felhasználók kétféle beállításhoz férhetnek hozzá. A protokollnak megfelelően a megfelelő konfigurációt kell használnia.

  • Háttérbeli HTTP-beállítások – A 7. rétegbeli proxykonfigurációk támogatják a HTTP- és HTTPS-protokollokat.
  • Háttérbeállítások – A 4. rétegbeli proxy (előzetes verzió) konfigurációi támogatják a TLS- és TCP-protokollokat.

Azure Application Gateway átjáró által felügyelt cookie-kat használ a felhasználói munkamenetek fenntartásához. Amikor egy felhasználó elküldi az első kérést az Application Gatewaynek, egy affinitási cookie-t állít be a válaszban a munkamenet részleteit tartalmazó kivonatértékkel. Ez a folyamat lehetővé teszi az affinitási cookie-t tartalmazó későbbi kérések átirányítását ugyanarra a háttérkiszolgálóra, így fenntartva a ragadást.

Ez a funkció akkor hasznos, ha egy felhasználói munkamenetet ugyanazon a kiszolgálón szeretne tartani, és amikor a munkamenet állapota helyileg van mentve a kiszolgálón egy felhasználói munkamenethez. Ha az alkalmazás nem tudja kezelni a cookie-alapú affinitást, nem használhatja ezt a funkciót. A használatához győződjön meg arról, hogy az ügyfelek támogatják a cookie-kat.

Megjegyzés:

Egyes biztonságirés-vizsgálatok megjelölhetik az Application Gateway affinitási cookie-ját, mert a Secure vagy a HttpOnly jelző nincs beállítva. Ezek a vizsgálatok nem veszik figyelembe, hogy a cookie adatai egyirányú kivonat használatával jönnek létre. A cookie nem tartalmaz felhasználói adatokat, és kizárólag útválasztásra szolgál.

A Chromium böngészőv80-as frissítése olyan felhatalmazást adott, hogy a SameSite attribútum nélküli HTTP-cookie-kat SameSite=Lax néven kell kezelni. CORS -kérések (forrásközi erőforrás-megosztás) esetén, ha a cookie-t külső környezetben kell elküldeni, akkor a SameSite=None értéket kell használnia ; Biztonságos attribútumok, amelyeket csak HTTPS-en keresztül kell elküldeni. Ellenkező esetben csak HTTP-forgatókönyv esetén a böngésző nem küldi el a cookie-kat harmadik féltől származó környezetben. A Chrome frissítés célja a biztonság növelése és a cross-site request hamisítás (CSRF) támadások elkerülése.

A változás támogatásához 2020. február 17-től az Application Gateway (az összes termékváltozattípus) a meglévő ApplicationGatewayAffinityCORS cookie mellett egy másik, ApplicationGatewayAffinityCORS nevű cookie-t is beszúr. Az ApplicationGatewayAffinityCORS cookie két további attribútumot is hozzáad hozzá ("SameSite=None; Biztonságos"), hogy a ragadós munkamenetek még a keresztirányú kérések esetében is megmaradjanak.

Az alapértelmezett affinitási cookie-név az ApplicationGatewayAffinity , amely módosítható. Ha a hálózati topológiában több alkalmazásátjárót is üzembe helyez, minden erőforráshoz egyedi cookie-neveket kell beállítania. Ha egyéni affinitási cookie-nevet használ, a rendszer egy további cookie-t ad hozzá CORS utótagként. Például: CustomCookieNameCORS.

Megjegyzés:

Ha a SameSite=None attribútum be van állítva, kötelező, hogy a cookie tartalmazza a Biztonságos jelzőt is, és HTTPS-en keresztül kell elküldeni. Ha a CORS-hoz munkamenet-affinitás szükséges, a számítási feladatot HTTPS-be kell migrálnia. Tekintse meg az Application Gateway TLS-terheléselosztás és végpontok közötti TLS-re vonatkozó dokumentációt. Tekintse meg az SSL áttekintését, az Application Gateway TLS-leállítással való konfigurálását és a teljes körű TLS konfigurálását.

Kapcsolatleürítés

A kapcsolatelvezetés segít abban, hogy a háttérkészlet tagjait zökkenőmentesen eltávolíthassuk a tervezett szolgáltatásfrissítések során. A háttérkészlet csoportból explicit módon eltávolított példányokra vonatkozik.

Ezt a beállítást az összes háttérkészlet-tagra alkalmazhatja, ha engedélyezi a kapcsolat kiürítését a háttérbeállításban. Biztosítja, hogy a háttérkészletben lévő összes törlési példány ne kapjon új kéréseket/kapcsolatokat, miközben a meglévő kapcsolatokat a konfigurált időtúllépési értékig fenntartja. Ez a folyamat a WebSocket-kapcsolatokra is igaz.

Konfiguráció típusa Érték
Alapértelmezett érték, ha a kapcsolat ürítése nincs engedélyezve a háttérbeállításban 30 másodperc
Felhasználó által megadott érték, ha a kapcsolat ürítése engedélyezve van a háttérbeállításban 1–3600 másodperc

A folyamat egyetlen kivétele az átjáró által kezelt munkamenet-affinitás miatt az instanciák törlésére vonatkozó kérelmek. Ezeket a kéréseket továbbra is eljuttatják a kijelentkező példányokhoz.

Megjegyzés:

Van egy korlátozás, amely miatt a konfigurációs frissítés megszakítja a folyamatos kapcsolatokat a kapcsolat kiürítési időtúllépése után. Ennek a korlátozásnak a megoldásához növelnie kell a kapcsolat kiürítési időtúllépését a háttérbeállításokban a maximális ügyfélletöltési időnél magasabb értékre.

Protokoll

Az Application Gateway http-t és HTTPS-t is támogat a háttérkiszolgálókra irányuló útválasztási kérelmekhez. HA HTTP-t választ, a háttérkiszolgálók felé történő forgalom titkosítatlan. Ha a titkosítatlan kommunikáció nem elfogadható, válassza a HTTPS lehetőséget.

Ez a beállítás a HTTPS-vel kombinálva a figyelőben támogatja a teljes körű TLS-t. Így biztonságosan továbbíthatja a háttérrendszerbe titkosított bizalmas adatokat. A teljes körű TLS-kompatibilis háttérkészletben lévő háttérkiszolgálók mindegyikét tanúsítványsal kell konfigurálni a biztonságos kommunikáció érdekében.

Kikötő

Ez a beállítás azt a portot adja meg, ahol a háttérkiszolgálók figyelik az application gatewayről érkező forgalmat. 1 és 65535 közötti portokat konfigurálhat.

Megbízható gyökértanúsítvány

Amikor kiválasztja a HTTPS protokollt a háttérbeállításokban, az Application Gateway-erőforrás az alapértelmezett megbízható legfelső szintű hitelesítésszolgáltató tanúsítványtárolóját használja a háttérkiszolgáló által biztosított tanúsítvány láncának és hitelességének ellenőrzéséhez.

Az Application Gateway-erőforrás alapértelmezés szerint népszerű hitelesítésszolgáltatói tanúsítványokat tartalmaz, így zökkenőmentes háttérbeli TLS-kapcsolatokat tesz lehetővé, amikor a háttérkiszolgáló tanúsítványát nyilvános hitelesítésszolgáltató állítja ki. Ha azonban teljes TLS-érvényesítéssel szeretne magánhálózati hitelesítésszolgáltatót vagy ön által létrehozott tanúsítványt használni, a háttérbeállítások konfigurációjában meg kell adnia a megfelelő legfelső szintű hitelesítésszolgáltatói tanúsítványt (.cer).

Háttérbeli HTTPS-érvényesítési beállítások

Ha a HTTPS van kiválasztva a Azure Application Gateway háttérbeállításaiban, az átjáró teljes TLS-kézfogás-ellenőrzést hajt végre, miközben biztonságos kapcsolatot hoz létre a háttérkiszolgálókkal. Ezek az érvényesítések a következők:

  1. A tanúsítványlánc ellenőrzése annak érdekében, hogy a tanúsítvány megbízható legyen.
  2. A tanúsítvány tulajdonosnevének ellenőrzése az Application Gateway által küldött kiszolgálónév-jelzés (SNI) alapján.
  3. A tanúsítvány lejáratának ellenőrzése annak ellenőrzéséhez, hogy a tanúsítvány még érvényes-e.

Az alapértelmezett érvényesítési beállítások biztosítják az átjáró és a háttérszolgáltatások közötti biztonságos TLS-kommunikációt. Bizonyos esetekben szükség lehet egy vagy több érvényesítési beállítás módosítására. A különböző ügyfélkövetelmények kielégítése érdekében az Application Gateway a következő konfigurálható lehetőségeket kínálja. Igény szerint mindkét lehetőséget használhatja.

Az ügyfelek számára elérhető TLS érvényesítési vezérlők portálnézetét bemutató diagram.

Tulajdonságok Értékek
validateCertChainAndExpiration Típus: Boolean (igaz vagy hamis). Az alapértelmezett beállítás igaz. Ez ellenőrzi vagy kihagyja a tanúsítványláncot és a lejárati ellenőrzést is.
validálja SNI Típus: Boolean (igaz vagy hamis). Az alapértelmezett beállítás igaz. Ellenőrzi, hogy a háttérkiszolgáló által megadott tanúsítvány közös neve megegyezik-e az Application Gateway által küldött kiszolgálónév-jelzés (SNI) értékkel.
sniName Típus: Karakterlánc. Ez a tulajdonság csak akkor szükséges, ha az validateSNI értéke igaz. Megadhat egy SNI-értéket, amely megegyezik a háttérrendszer tanúsítványának általános nevével. Alapértelmezés szerint az Application Gateway a bejövő kérés állomásfejlécét használja SNI-ként.

Megjegyzés:

  • Javasoljuk, hogy az összes érvényesítést engedélyezve tartsa az éles környezetekben. Egyes vagy az összes ellenőrzés letiltása csak tesztelési és fejlesztési célokra javasolt, például önaláírt tanúsítványok használata esetén.
  • Ezek a beállítások nem vonatkoznak a tesztelési próbaművelet funkcionalitására, amikor egyéni állapotfelügyeleti szondát adnak hozzá. Ennek eredményeképpen az eredmények között eltéréseket tapasztalhat a rendszeres állapotmintákhoz való összehasonlítás során.
  • Jelenleg a TLS-proxy nem támogatott.
  • A PowerShell és a parancssori felület hamarosan támogatott lesz.

Kérés-időtúllépés

Ez a beállítás azt a másodpercet adja meg, amíg az Application Gateway választ vár a háttérkiszolgálótól. Az alapértelmezett érték 20 másodperc. Előfordulhat azonban, hogy ezt a beállítást az alkalmazás igényeinek megfelelően szeretné módosítani. Az elfogadható értékek 1 másodperctől 86400 másodpercig (24 óra) érhetők el.

Háttéralkalmazás elérési útjának felülbírálása

Ezzel a beállítással konfigurálhat egy opcionális egyéni továbbítási útvonalat, amelyet a kérés háttérbe történő továbbításakor használhat. A bejövő elérési útnak a felülbírálási háttérútvonal mezőjében szereplő egyéni elérési útnak megfelelő bármely része át lesz másolva a továbbított elérési útra. Az alábbi táblázat a funkció működését mutatja be:

  • Ha a HTTP-beállítás egy egyszerű kérés-útválasztási szabályhoz van csatolva:

    Eredeti kérelem Háttéralkalmazás elérési útjának felülbírálása Háttérrendszerbe továbbított kérés
    /otthon/ felülír /felülírás/kezdőlap/
    /home/secondhome/ felülír /felülbírálás/home/secondhome/
  • Ha a HTTP-beállítás egy útvonalalapú kérelem-útválasztási szabályhoz van csatolva:

    Eredeti kérelem Elérési út szabálya Háttéralkalmazás elérési útjának felülbírálása Háttérrendszerbe továbbított kérés
    /pathrule/home/ /útvonal_szabály* felülír /felülírás/kezdőlap/
    /pathrule/home/secondhome/ /útvonal_szabály* felülír /felülbírálás/home/secondhome/
    /otthon/ /útvonal_szabály* felülír /felülírás/kezdőlap/
    /home/secondhome/ /útvonal_szabály* felülír /felülbírálás/home/secondhome/
    /pathrule/home/ /pathrule/home* felülír felülír
    /pathrule/home/secondhome/ /pathrule/home* felülír /felülbírálás/másodfokú/
    Útvonalszabály Útvonalszabály felülír felülír

Egyéni mintavétel használata

Ez a beállítás egy egyéni mintavételt egy HTTP-beállításhoz társít. Csak egy egyéni mintavétel társítható HTTP-beállítással. Ha nem társít kifejezetten egy egyedi próbát, a rendszer az alapértelmezett próbát használja a háttér állapotának ellenőrzésére. Javasoljuk, hogy hozzon létre egy egyéni ellenőrző eszközt, hogy nagyobb mértékben tudja szabályozni a háttérrendszerek állapotfigyelését.

Megjegyzés:

Az egyéni mintavétel csak akkor figyeli a háttérkészlet állapotát, ha a megfelelő HTTP-beállítás explicit módon társítva van egy figyelőhöz.

A hosztnév beállítása

Az Application Gateway lehetővé teszi, hogy a háttérrendszerrel létesített kapcsolat más gazdagépnevet használjon, mint az ügyfél által az Application Gatewayhez való csatlakozáshoz használt. Bár ez a konfiguráció bizonyos esetekben hasznos lehet, legyen óvatos, amikor úgy módosítja a gazdagépnevet, hogy az eltérjen az alkalmazás átjáró és az ügyfél, valamint a háttér cél között.

Éles környezetben ajánlott ugyanazt a gazdagépnevet használni az ügyfél és az alkalmazásátjáró kapcsolatára, valamint az alkalmazásátjáró és a háttérbeli célkapcsolat között. Ez a gyakorlat elkerüli az abszolút URL-címekkel, az átirányítási URL-címekkel és a gazdagéphez kötött cookie-kkal kapcsolatos esetleges problémákat.

Az ettől eltérő Application Gateway beállítása előtt tekintse át az architektúraközpontban részletesebben tárgyalt konfiguráció következményeit: A fordított proxy és a háttérbeli webalkalmazás közötti eredeti HTTP-gazdagépnév megőrzése

A HTTP-beállításnak két aspektusa van, amelyek befolyásolják az Host Application Gateway által a háttérrendszerhez való csatlakozáshoz használt HTTP-fejlécet:

  • "Állomásnév kiválasztása a backendcímből"
  • "Állomásnév felülírása"

Hosztnév kiválasztása a backend cím alapján

Ez a képesség dinamikusan beállítja a kérelem gazdagépfejlécét a háttérkészlet gazdagépnevére. IP-címet vagy FQDN-t használ.

Ez a funkció akkor segít, ha a háttérrendszer tartományneve eltér az alkalmazási átjáró DNS-nevétől, és a háttérrendszer egy adott gazdagépfejlécre támaszkodik, hogy a megfelelő végpontra oldódjon fel.

Példaként a több-bérlős szolgáltatások szolgálnak háttérként. Az app service egy több-bérlős szolgáltatás, amely egyetlen IP-címmel rendelkező megosztott területet használ. Tehát egy alkalmazás szolgáltatás csak az egyéni tartománybeállításokban konfigurált gazdagépnév alapján érhető el.

Alapértelmezés szerint az egyéni tartománynév example.azurewebsites.net. Ha az app service-hez egy olyan gazdagépnéven szeretne hozzáférni, amely nincs explicit módon regisztrálva az app service-ben, vagy az Application Gateway teljes tartománynevén keresztül, felülbírálhatja az eredeti kérelemben szereplő gazdagépnevet az App Service gazdagépnevére. Ehhez engedélyezze a gazdagépnév kiválasztása a háttércím alapján beállítást.

Olyan egyéni tartomány esetében, amelynek meglévő egyéni DNS-neve le van képezve az app service-re, az ajánlott konfiguráció nem engedélyezi a gazdagép nevét a háttércímből.

Megjegyzés:

Ez a beállítás nem szükséges az App Service Environment esetében, amely egy dedikált üzembe helyezés.

Hosztnév felülbírálása

Ez a képesség lecseréli az alkalmazásátjárón bejövő kérelem gazdagépfejlécét a megadott gazdagépnévre.

Ha például www.contoso.com a gazdagépnév-beállításban van megadva, az eredeti kérés *https://appgw.eastus.cloudapp.azure.com/path1 *-rahttps://www.contoso.com/path1 változik, amikor a kérést a háttérkiszolgálóra továbbítja.

Dedikált háttérkapcsolat

Azure Application Gateway alapértelmezés szerint újra felhasználja az üresjárati háttérkapcsolatokat, hogy optimalizálja a TCP-kapcsolatok erőforrás-kihasználtságát mind az Application Gateway, mind a háttérkiszolgáló számára. Az ügyféladat-elérési utakon található olyan biztonsági funkciók támogatásához, amelyek ügyfélenként egyedi háttérkapcsolatokat igényelnek, Azure Application Gateway V2 dedikált kapcsolatokat biztosít a háttérkiszolgálókhoz.

Képernyőkép az Application Gateway 7. rétegbeli proxyn keresztüli hálózati folyamatokról.

Ez a képesség közvetlen, egy-az-egyhez leképezést hoz létre az előtérbeli és a háttérkapcsolatok között, így állandó kapcsolatot biztosít az egyes ügyfelek számára.

Megjegyzés:

Az NTLM- vagy Kerberos-átengedési hitelesítés engedélyezéséhez győződjön meg arról, hogy a dedikált háttérkapcsolat beállítása be van kapcsolva. Ez a konfiguráció egy-az-egyhez leképezést tart fenn az előtér- és háttérkapcsolatok között, ami elengedhetetlen az ezen hitelesítési protokollok által megkövetelt munkamenet-integritás megőrzéséhez.

Megjegyzés:

Ha a környezet régebbi böngészőket (például MSIE 6) futtató örökölt ügyfeleket vagy örökölt User-Agent fejlécet küldő ügyfeleket (pl.:MSIE6) tartalmaz, a dedikált háttérkapcsolat engedélyezése csatlakozási problémákhoz fog vezetni. Ennek oka az MSIE 6 HTTP/1.1 és az életben tartás implementációinak ismert hibái, amelyek váratlan csatlakozási hibákat okozhatnak. A stabil és megbízható élmény biztosítása érdekében javasoljuk, hogy frissítse ezeket az ügyfeleket egy modern böngészőre vagy ügyfélveremre.

Fontos

A dedikált háttérkapcsolat a háttérkapcsolatok számának növekedéséhez vezet, ezért több erőforrásra lehet szükség az Application Gateway és a háttérkiszolgálók egyidejű kapcsolatainak növeléséhez. Az Application Gatewayen fontolóra kell vennie a példányok számának növelését vagy az automatikus skálázás engedélyezését.

Ha a háttérrendszer távoli kiszolgáló, az Application Gateway-példányok minden kapcsolathoz SNAT-portokat használnak. Mivel minden ügyfélkapcsolat dedikált háttérkapcsolatot hoz létre, az SNAT-porthasználat ennek megfelelően nő. Ezért fontos figyelembe venni a lehetséges SNAT-portkimerülést. Útmutatásért tekintse meg az architektúra ajánlott eljárásait .

A http/2 nem támogatja a dedikált háttérkapcsolatot.

4xx-hibák elhárítása dedikált háttérkapcsolatokkal

Ha a dedikált háttérkapcsolatok engedélyezve van egy háttérbeállításhoz, és a háttéralkalmazás 4xx állapotkódokat ad vissza, a probléma diagnosztizálásához és megoldásához kövesse az alábbi útmutatást.

Ellenőrizze, hogy a Szolgáltatásnév (SPN) konfigurációja megfelelő-e. Az hitelesítési mechanizmusok, mint az NTLM és a Kerberos, megfelelően regisztrált és egyedi szolgáltatásneveket igényelnek a sikeres hitelesítéshez. Győződjön meg arról, hogy a szolgáltatásnevek megfelelően konfiguráltak és egyediek a címtárban. További részletekért tekintse meg a Kerberos dokumentációját.

Tekintse át az alállapotkódok háttérkiszolgálói naplóit– Az Application Gateway csak az elsődleges HTTP-állapotot jeleníti meg (például: 401 Jogosulatlan). A mögöttes ok azonosításához tekintse át a háttérkiszolgáló naplóit részletesebb állapotinformációkért. Útmutatásért tekintse meg a Windows Authentication configuration.

Következő lépések