Zeker weten. Hier is een meer praktische, ietwat rommelige versie die de kern van de zaak nog steeds duidelijk maakt en enkele ontbrekende details bevat die mensen waarschijnlijk vergeten: — In de wereld van zakelijke webtoegang kan Kerberos-authenticatie nogal lastig zijn om correct in te stellen voor verschillende browsers. Meestal is het grootste probleem dat browsers gewoon wat configuratie nodig hebben om soepel te communiceren met uw Active Directory-configuratie. Als u ooit hebt geprobeerd om Chrome, Firefox of IE te gebruiken voor transparante Windows-aanmelding op interne sites, bent u waarschijnlijk tegen vreemde problemen aangelopen, zoals het niet werken met SSO of de browser die toch om inloggegevens vraagt. Daarvoor is deze handleiding bedoeld. Het beschrijft de basisconfiguratie zodat uw browsers uw AD Kerberos-tickets vertrouwen en deze vervolgens zonder problemen doorgeven. U hebt een webserver nodig die Kerberos ondersteunt (bijvoorbeeld IIS met Kerberos-authenticatie ingeschakeld), de gebruiker moet op de een of andere manier toegang hebben en zijn of haar machine moet correct zijn aangemeld bij AD met een geldig TGT (Kerberos Ticket Granting Ticket).Zonder deze voorwaarden kunt u het wel vergeten. En let op; Browsers gaan verschillend om met tickets en zones, dus geloof me, deze stappen helpen je de klassieke vraag “waarom vraagt deze site elke keer om in te loggen?” te voorkomen.
Hoe Kerberos-authenticatieproblemen in browsers op te lossen
Kerberos inschakelen in Internet Explorer (11)
Ten eerste is IE misschien wat ouderwets, maar nog steeds verrassend belangrijk op sommige plekken. Bij het oplossen van Kerberos-problemen in IE is het belangrijkste ervoor te zorgen dat de sites worden herkend als ‘intranet’ en vertrouwd, zodat IE het juiste token verzendt.- Ga naar Internetopties — u kunt dit doen via het Configuratiescherm > Internetopties of via het tandwielpictogram in IE.- Ga naar Beveiliging, klik vervolgens op Lokaal intranet en daarna op Sites > Geavanceerd.- Voeg hier uw site toe, bijvoorbeeld https://*.woshub.comen ook http://*.woshub.com. Op deze manier behandelt IE ze als intranet, wat essentieel is voor Kerberos-ondersteuning.- Voor eenvoudiger beheer kunt u dit instellen via Groepsbeleid: ga naar Computerconfiguratie > Beleid > Beheersjablonen > Windows-onderdelen > Internet Explorer en zoek naar de instelling Site-naar-zone-toewijzing. Stel de waarden in op 1 (Intranetzone) voor uw sites.- Klik daarna opnieuw op het tabblad Geavanceerd. Zorg ervoor dat Geïntegreerde Windows-verificatie inschakelen is aangevinkt.- Belangrijk: Als u sites toevoegt aan de zone Vertrouwde sites, worden er geen Kerberos-tokens verzonden. Houd sites zoals uw interne webapplicaties strikt in de zone ‘Lokaal intranet’.Zodra dit is gedaan, zal IE automatisch proberen uw ingelogde Kerberos-tickets door te geven wanneer u die URL’s bezoekt. Soms kan een herstart of zelfs het wissen van de cache helpen als het probleem hardnekkig is.
Chrome toegang geven tot Kerberos
Chrome gebruikt de onderliggende configuratie van IE, dus de eerste stap is ervoor te zorgen dat IE correct is ingesteld (zie hierboven).Maar soms, vooral bij oudere Chrome-versies, moet u uw Kerberos-domein ook expliciet op de whitelist zetten.- Op de commandoregel kunt u Chrome starten met de volgende vlaggen: plaintext –auth-server-whitelist=”*.woshub.com” –auth-negotiate-delegate-whitelist=”*.woshub.com” – Voor een permanente oplossing kunt u deze beleidsregels instellen via het register: Navigeer naar HKLM\SOFTWARE\Policies\Google\Chrome en maak of bewerk de DWORD-waarden: – AuthServerWhitelist = `*.woshub.com` – AuthNegotiateDelegateWhitelist = `*.woshub.com` – Start Chrome opnieuw nadat u deze instellingen hebt toegepast.- Vergeet ook niet om de Kerberos-tickets te wissen met: bash klist purge (volgens de handleiding van Microsoft ) en vernieuw vervolgens uw browser.
Firefox laten slagen voor de Kerberos-controles
Firefox pakt dingen anders aan — het gebruikt niet de systeeminstellingen van IE, dus je moet expliciet aangeven welke sites je wilt vertrouwen.- Ga in Firefox naar about:config en klik op “Het risico accepteren”.- Zoek naar `network.negotiate-auth.trusted-uris` en stel dit in op je domein, bijvoorbeeld: plaintext https://*.woshub.com.- Doe hetzelfde voor `network.automatic-ntlm-auth.trusted-uris`.Je kunt beide op dezelfde waarde instellen.- Om problemen met FQDN’s te voorkomen, schakel je `network.negotiate-auth.allow-non-fqdn` in en stel je dit in op `true`.- Als Firefox nog steeds geen Kerberos-tickets doorgeeft, controleer dan je ticketcache: bash klist tickets of probeer te controleren of je inloggegevens wel worden herkend.
Eerlijk gezegd is het een beetje vreemd, maar als je al deze aanpassingen eenmaal hebt gedaan, beginnen browsers Kerberos-gegevens meestal probleemloos door te geven. Ik weet niet zeker waarom het soms werkt, maar in sommige gevallen is een herstart of het wissen van de cache/klist-tickets voldoende om het weer aan de praat te krijgen. En ja, browserupdates zorgen altijd even voor problemen – geduld is een schone zaak.
—
Samenvatting
- Zorg ervoor dat de sites in Internet Explorer en Firefox in de zone ‘Lokaal intranet’ staan.
- Controleer de beveiligingsinstellingen van Internet Explorer: schakel Geïntegreerde Windows-verificatie in.
- Voor Chrome kun je de opdrachtregelparameters of registerinstellingen aanpassen om je domein op de whitelist te zetten.
- Wis de ticketcache met `klist purge` wanneer er problemen optreden of wanneer de cache niet wordt vernieuwd.
- Test met tools zoals Fiddler of `klist tickets` om te zien wat er daadwerkelijk wordt verzonden.
Samenvatting
Kerberos in browsers aan de praat krijgen is niet altijd even makkelijk, maar met een beetje geduld en de juiste instellingen kan SSO op je intranet probleemloos verlopen. Soms is het gewoon die ene obscure instelling die alles blokkeert, dus geef niet op. Hopelijk bespaart dit iemand een hoop kopzorgen. We hopen dat dit helpt en dat je browsers eindelijk stoppen met om de twee minuten om inloggegevens te vragen.