Kerberos korlátozott delegálási (KCD)-konfigurációk hibaelhárítása a Microsoft Entra alkalmazásproxyval

Az egyszeri bejelentkezési módszerek alkalmazásonként eltérőek. A Microsoft Entra alkalmazásproxy alapértelmezés szerint kerberos korlátozott delegálást (KCD) biztosít. A felhasználók a Kerberos használatával hitelesítik magukat a privát alkalmazásokban.

Ez a cikk egyetlen hivatkozási pontot biztosít a leggyakoribb problémák elhárításához. Ezenkívül az összetettebb implementációs problémák diagnosztikáját is ismerteti.

Ez a cikk az alábbi feltételezéseket ismerteti.

  • A Microsoft Entra alkalmazásproxy üzembe helyezése és a nem KCD-alkalmazásokhoz való általános hozzáférés. További információ: Ismerkedés az alkalmazásproxyval.
  • A közzétett alkalmazás az Internet Information Services (IIS) és a Kerberos Microsoft-implementációján alapul.
  • A kiszolgáló- és alkalmazás-gazdagépek egyetlen Microsoft Entra-tartományban találhatók. A tartományok közötti és az erdős forgatókönyvekről további információt a KCD tanulmányában talál.
  • Az alkalmazás közzé van téve egy Microsoft Entra ID-bérlőben, amelyen engedélyezve van az előzetes hitelesítés. A felhasználóknak űrlapalapú hitelesítéssel kell hitelesítést végeznie. A cikk nem foglalkozik a gazdag ügyfél-hitelesítési forgatókönyvekkel.

Előfeltételek

Az egyszerű helytelen konfigurációk vagy általános hibák okozzák a legtöbb problémát. A hibaelhárítás előtt ellenőrizze a KCD egyszeri bejelentkezés és az alkalmazásproxy használatának összes előfeltételét.

Csatlakozás or gazdagépek nem korlátozódnak csak egy adott helyi tartományvezérlővel (DC) való kommunikációra. Ellenőrizze a használt tartományvezérlőt, mert az változhat.

A tartományok közötti forgatókönyvek olyan átirányításokra támaszkodnak, amelyek egy összekötő gazdagépét olyan tartományvezérlőkre irányítják, amelyek a helyi hálózat peremhálózatán kívül lehetnek. Ezekben az esetekben ugyanilyen fontos, hogy a forgalmat a többi megfelelő tartományt képviselő számítógépekre is továbbküldjük. Ha nem, a delegálás meghiúsul.

Kerülje az aktív behatolás-megelőzési rendszer (IPS) vagy a behatolásészlelési rendszer (IDS) eszközeit az összekötő gazdagépek és a tartományvezérlők között. Ezek az eszközök túl tolakodóak, és zavarják az alapvető távoli eljáráshívási (RPC-) forgalmat.

A delegálás tesztelése egyszerű forgatókönyvekben. Minél több változót vezet be, annál többet kell megküzdenie. Időt takaríthat meg, ha egyetlen összekötőre korlátozza a tesztelést. A probléma megoldása után adjon hozzá további összekötőket.

Bizonyos környezeti tényezők is hozzájárulhatnak egy problémához. Ezeknek a tényezőknek a elkerülése érdekében minimalizálja az architektúrát a lehető legnagyobb mértékben a tesztelés során. Gyakoriak például a helytelenül konfigurált belső tűzfal hozzáférés-vezérlési listái (ACL-ek). Ha lehetséges, küldje el az összekötők összes forgalmát közvetlenül a tartományvezérlőkre és a háttéralkalmazásra.

Az összekötők elhelyezésének legjobb helye a lehető legközelebb van a céljaikhoz. A tesztelés során beágyazott tűzfal szükségtelen bonyolultságot ad, és meghosszabbíthatja a vizsgálatokat.

Mi mutatja a KCD-problémát? A KCD egyszeri bejelentkezésének sikertelenségére számos gyakori jel utal. A probléma első jelei megjelennek a böngészőben.

Képernyőkép egy helytelen K C D konfigurációs hibáról a

Példa: Az engedélyezés nem sikerült a hiányzó engedélyek miatt

Mindkét kép ugyanazt a tünetet mutatja: egyszeri bejelentkezési hiba. Az alkalmazáshoz való felhasználói hozzáférés megtagadva.

Hibaelhárítás

A hibaelhárítást a három szakaszra bontva.

Ügyfél előtti hitelesítés

A külső felhasználó egy böngészőn keresztül hitelesít. Ahhoz, hogy a KCD egyszeri bejelentkezés (SSO) működjön, szükség van a Microsoft Entra-azonosító előzetes hitelesítésére. Tesztelje és kezelje ezt a képességet, ha bármilyen probléma merül fel. Az előzetes hitelesítési szakasz nem kapcsolódik a KCD-hez vagy a közzétett alkalmazáshoz. Az eltéréseket egyszerűen kijavíthatja, ha ellenőrzi, hogy a tárgyfiók létezik-e a Microsoft Entra-azonosítóban. Ellenőrizze, hogy az alkalmazás nincs-e letiltva vagy letiltva. A böngészőben megjelenő hibaválasz elég leíró az ok magyarázatához.

Delegálási szolgáltatás

Az a privát hálózati összekötő, amely Kerberos-szolgáltatásjegyet kap a felhasználók számára a Kerberos Key Distribution Centerből (KCD).

Az ügyfél és az Azure előtérbeli külső kommunikációja nem befolyásolja a KCD-t. Ezek a kommunikációk csak a KCD működését ellenőrzik. Az alkalmazásproxy szolgáltatás egy érvényes felhasználói azonosítót kap, amely Kerberos-jegy lekérésére szolgál. Az azonosító nélkül a KCD nem lehetséges és sikertelen.

A böngésző hibaüzenetei jó nyomokat adnak arról, hogy miért hiúsulnak meg a dolgok. Jegyezze fel a activity ID válaszban szereplő mezőket és timestamp mezőket. Az információk segítenek korrelálni a viselkedést az alkalmazásproxy eseménynaplójának tényleges eseményeihez.

Példa: Helytelen KCD-konfigurációs hiba

Az eseménynaplóban látható megfelelő bejegyzések 13019-ben vagy 12027-ben jelennek meg. Keresse meg az összekötő eseménynaplóit az Alkalmazások és szolgáltatások naplók>Microsoft>Microsoft Entra privát hálózatában> Csatlakozás or> Rendszergazda.

  1. Használjon egy A rekordot a belső tartománynévrendszerben (DNS) az alkalmazás címéhez, nem pedig egy CName.
  2. Ellenőrizze, hogy az összekötő-gazdagép jogosult-e delegálni a kijelölt célfiók egyszerű szolgáltatásnevét (SPN). Ellenőrizze, hogy minden hitelesítési protokoll használata ki van-e választva. További információ: SSO konfigurációs cikk.
  3. Ellenőrizze, hogy az egyszerű szolgáltatásnévnek csak egy példánya létezik-e a Microsoft Entra-azonosítóban. Probléma setspn -x egy parancssorból bármely tartománytag gazdagépen.
  4. Ellenőrizze, hogy olyan tartományházirend van-e érvényben, amely korlátozza a kibocsátott Kerberos-jogkivonatok maximális méretét. A szabályzat megakadályozza, hogy az összekötő jogkivonatot kapjon, ha túlzott.

Az összekötő gazdagépe és a Kerberos korlátozott delegálás (KDC) közötti cserét rögzítő hálózati nyomkövetés a következő legjobb lépés a problémák részletesebb megismerése érdekében. További információkért tekintse meg a részletes hibaelhárítási cikket.

Ha a jegykészítés jól néz ki, egy esemény jelenik meg a naplókban, amely szerint a hitelesítés meghiúsult, mert az alkalmazás 401-et adott vissza. Ez az esemény azt jelzi, hogy a célalkalmazás elutasította a jegyet. Ugrás a következő szakaszra.

Célalkalmazás

Az összekötő által biztosított Kerberos-jegy fogyasztója. Ebben a szakaszban arra számítunk, hogy az összekötő kerberos szolgáltatásjegyet küldött a háttérrendszerbe. A jegy az első alkalmazáskérés fejléce.

  1. A portálon definiált belső URL-cím használatával ellenőrizze, hogy az alkalmazás közvetlenül a böngészőből érhető-e el az összekötő gazdagépén. Ezután sikeresen bejelentkezhet. Részletek az összekötő hibaelhárítási oldalán találhatók.

  2. Győződjön meg arról, hogy a böngésző és az alkalmazás közötti hitelesítés Kerberost használ.

  3. Futtassa a DevToolst (F12) az Internet Explorerben, vagy használja a Fiddlert az összekötő gazdagépéről. Nyissa meg az alkalmazást a belső URL-cím használatával. Az egyeztetés vagy a Kerberos jelenlétének ellenőrzéséhez vizsgálja meg az alkalmazás válaszában visszaadott webes engedélyezési fejléceket.

    • A böngészőből az alkalmazásra adott válaszban visszaadott következő Kerberos-blob YII-vel kezdődik. Ezek a levelek azt mondják, hogy Kerberos fut. A Microsoft NT LAN Manager (NTLM) viszont mindig a TlRMTVNTUAAB-val kezdődik, amely az NTLM biztonsági támogatási szolgáltatót (NTLMSSP) olvassa a Base64-ről dekódolva. Ha a TlRMTVNTUAAB a blob elején jelenik meg, a Kerberos nem érhető el. Ha nem látja a TlRMTVNTUAAB parancsot, a Kerberos valószínűleg elérhető.

      Feljegyzés

      A Fiddler használata esetén ehhez a módszerhez ideiglenesen le kell tiltania a kiterjesztett védelmet az alkalmazás konfigurációján az IIS-ben.

      Böngésző hálózati ellenőrzési ablaka

    • Az ábrán szereplő blob nem a TIRMTVNTUAAB billentyűvel kezdődik. Ebben a példában tehát a Kerberos elérhető, és a Kerberos-blob nem YII-vel kezdődik.

  4. Ideiglenesen távolítsa el az NTLM-et az IIS-webhelyen található szolgáltatók listájából. Közvetlenül az Internet Explorerből érheti el az alkalmazást az összekötő gazdagépén. Az NTLM már nem szerepel a szolgáltatók listájában. Az alkalmazást csak Kerberos használatával érheti el. Ha a hozzáférés sikertelen, az alkalmazás konfigurációjával kapcsolatos probléma léphet fel. A Kerberos-hitelesítés nem működik.

    • Ha a Kerberos nem érhető el, ellenőrizze az alkalmazás hitelesítési beállításait az IIS-ben. Győződjön meg arról, hogy az Egyeztetés lista tetején található, alatta pedig az NTLM. Ha a Nem tárgyal, a Kerberos vagy az Egyeztetés vagy a PKU2U elemet látja, csak akkor folytassa a műveletet, ha a Kerberos működik.

      Windows-hitelesítésszolgáltatók

    • Ha a Kerberos és az NTLM érvényben van, ideiglenesen tiltsa le az alkalmazás előzetes hitelesítését a portálon. Próbálja meg elérni az internetről a külső URL-cím használatával. A rendszer kérni fogja a hitelesítést. Ezt ugyanazzal a fiókkal teheti meg, amelyet az előző lépésben használt. Ha nem, akkor probléma van a háttéralkalmazással, nem a KCD-vel.

    • Engedélyezze újra az előhitelesítést a portálon. Hitelesítés az Azure-on keresztül, ha külső URL-címén keresztül próbál csatlakozni az alkalmazáshoz. Ha az egyszeri bejelentkezés sikertelen, tiltott hibaüzenet jelenik meg a böngészőben és az 13022-s eseményben a naplóban:

      A Microsoft Entra privát hálózati összekötő nem tudja hitelesíteni a felhasználót, mert a háttérkiszolgáló HTTP 401-hibával válaszol a Kerberos-hitelesítési kísérletekre.

      Tiltott HTTTP 401-es hiba megjelenítése

    • Ellenőrizze az IIS-alkalmazást. Győződjön meg arról, hogy a konfigurált alkalmazáskészlet és az SPN úgy van konfigurálva, hogy ugyanazt a fiókot használja a Microsoft Entra ID-ban. Navigálás az IIS-ben az alábbi ábrán látható módon.

      IIS-alkalmazáskonfigurációs ablak

      Miután megismerte az identitást, győződjön meg arról, hogy ez a fiók konfigurálva van a szóban forgó egyszerű szolgáltatásnévvel. Például: setspn –q http/spn.wacketywack.com. Írja be a következő szöveget egy parancssorba.

      A SetSPN parancsablak megjelenítése

    • Ellenőrizze a portálon az alkalmazás beállításai között definiált egyszerű szolgáltatásneveket. Győződjön meg arról, hogy a cél Microsoft Entra-fiókhoz konfigurált spN-t használja az alkalmazás alkalmazáskészlete.

    • Lépjen az IIS-be, és válassza az alkalmazás Konfigurációszerkesztő beállítását. Lépjen a system.webServer/security/authentication/windowsAuthentication webhelyre. Győződjön meg arról, hogy a UseAppPoolCredentialsértéke igaz.

      IIS-konfigurációs alkalmazáskészletek hitelesítő adatainak beállítása

      Módosítsa az értéket Igaz értékre. Távolítsa el az összes gyorsítótárazott Kerberos-jegyet a háttérkiszolgálóról a parancs futtatásával.

      Get-WmiObject Win32_LogonSession | Where-Object {$_.AuthenticationPackage -ne 'NTLM'} | ForEach-Object {klist.exe purge -li ([Convert]::ToString($_.LogonId, 16))}
      

Ha engedélyezi a Kernel módot, az javítja a Kerberos-műveletek teljesítményét. Ez azonban azt is eredményezi, hogy a kért szolgáltatás jegyét a gépfiók használatával visszafejtik. Ezt a fiókot helyi rendszernek is nevezik. Állítsa ezt az értéket True értékre, hogy megszakítsa a KCD-t, ha az alkalmazást egy farm több kiszolgálóján üzemeltetik.

  • Egy másik ellenőrzésként tiltsa le a kiterjesztett védelmet is. Bizonyos esetekben a kiterjesztett védelem megszakította a KCD-t, amikor az adott konfigurációkban engedélyezve volt. Ezekben az esetekben az alkalmazás az alapértelmezett webhely almappájaként lett közzétéve. Ez az alkalmazás csak névtelen hitelesítésre van konfigurálva. Az összes párbeszédpanel szürkítve jelenik meg, ami arra utal, hogy a gyermekobjektumok nem öröklik az aktív beállításokat. Javasoljuk, hogy tesztelje, de ne felejtse el visszaállítani ezt az értéket, hogy engedélyezve legyen, ahol lehetséges.

    Ez az extra ellenőrzés nyomon követi a közzétett alkalmazás használatát. További, delegálásra konfigurált összekötőket is létrehozhat. További információkért olvassa el a Microsoft Entra-alkalmazásproxy hibaelhárításával kapcsolatos részletes technikai útmutatót.

Ha továbbra sem tud előrehaladást elérni, a Microsoft ügyfélszolgálata segítséget nyújthat. Hozzon létre egy támogatási jegyet közvetlenül a portálon belül.

Egyéb forgatókönyvek

A Microsoft Entra alkalmazásproxy Kerberos-jegyet kér, mielőtt elküldené a kérését egy alkalmazásnak. Egyes alkalmazások nem szeretik ezt a hitelesítési módszert. Ezek az alkalmazások a hagyományosabb tárgyalásokat várják. Az első kérés névtelen, így az alkalmazás a 401-ben támogatott hitelesítési típusokkal válaszolhat. Ez a Kerberos-egyeztetési típus a jelen dokumentumban ismertetett lépésekkel engedélyezhető: Kerberos korlátozott delegálás egyszeri bejelentkezéshez.

A több ugrásos hitelesítést gyakran használják olyan helyzetekben, amikor egy alkalmazás rétegzett. A szintek közé tartozik a háttérrendszer és az előtér. Mindkét réteghez hitelesítés szükséges. Ilyen például az SQL Server Reporting Services. További információt a Kerberos korlátozott delegálásának konfigurálása webes regisztrációs proxylapokhoz című témakörben talál.

Következő lépések

Konfigurálja a KCD-t egy felügyelt tartományban.