2013-07-02 16 views
9

Ich habe einen IIS 7-Server mit 2 Standorten - Site1, Site2.Kerberos-Delegation funktioniert nicht in Chrome

site1 bindet Port 80, site2 bindet Port 81

ich eine Web-Seite in site2 haben, die eine http über $.ajax() zu einer URL in site1 bekommen Anfrage sendet.

ich beide Website konfiguriert haben, die Verwendung von Kerberos:

  1. Aktiviert nur die Windows-Authentifizierung, ausgewählt nur verhandeln: kerberos in Anbieter.

  2. Konfigurierter SPN für den Benutzer/Server in AD.

Ich benutze Fiddler, um die Anfrage Header zu überwachen.

  1. Als ich IE8 verwenden, ich sehe, dass Kerberos-Ticket von site2 delegiert wird über 2-Hop, die Art und Weise kerberos sollte SITE1 arbeiten.

  2. Wenn ich Chrome verwende, sehe ich, dass keberos Ticket nicht delegiert ist. Ich bekomme einen 401 Fehler.

Ich habe versucht Einstellung:

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome] 
"AuthNegotiateDelegateWhitelist"="*" 

... (und insbesondere den Servernamen), aber es hat nicht funktioniert.

Irgendwelche Ideen?

+0

Einstellung [HKEY_LOCAL_MACHINE \ SOFTWARE \ Richtlinien \ Google \ Chrome] "AuthNegotiateDelegateWhitelist" = "*" hat mir geholfen. – Boogier

+2

Ich hatte Schwierigkeiten, [AuthServerWhitelist] (https://dev.chromium.org/administrators/policy-list-3#AuthServerWhitelist) zum Arbeiten zu bekommen, und es sieht so aus, als ob Chrome jetzt "HKLM \ SOFTWARE \ Policies \ Google \ Chrome" verwendet für alles anstelle von 'HKLM \ SOFTWARE \ Policies \ Chromium'. Mit '... \ Google \ Chrome \ AuthServerWhitelist' legen Sie fest, dass' * .example.com' aushandelt/Kerberos funktioniert wie erwartet. –

Antwort

0

Enthält der eingegebene Wert die Anführungszeichen?

Versuchen Sie * ohne Anführungszeichen eingeben.

Fahren Sie Chrome vollständig herunter (überprüfen Sie den Task-Manager, um sicherzugehen), und versuchen Sie es erneut.

Wenn Sie "*" mit den Anführungszeichen verwenden, wird es nicht funktionieren.

2

Ich hatte den gleichen Registrierungswert zu diesem Schlüssel hinzuzufügen, alles funktioniert:

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Chromium

auch interessant zu sehen, dass ich mit * .domain.local statt nur *.

+0

funktioniert nicht für mich. Chrome 47.0.2526.73 m – Boogier