Windows-Authentifizierung bei IIS auf einem lokalen Server mit vollständig qualifizierter URL

9

Ich habe eine Webanwendung in IIS 7 eingerichtet, die mit der Windows-Authentifizierung konfiguriert ist. Ich kann mich beim Computer über die vollständig qualifizierte URL eines anderen Computers authentifizieren und er verwendet die richtige Domäne. Wenn ich jedoch versuche, über die vollständig qualifizierte Domäne (entweder in einem anderen Dienst oder nur über die URL im Internet Explorer) eine Verbindung zum Computer herzustellen, versucht die Windows-Anmeldeaufforderung, die Verwendung des Computers als Domäne zu erzwingen, und nicht die Richtige Domain zum Anmelden. Der Versuch, die Domain mit anzugeben, schlägt fehl domain\usernameoder [email protected]schlägt fehl.

Ich sollte beachten, dass das Anzeigen der Webanwendung über localhostauf dem Computer funktioniert, die Verwendung der vollständigen site.company.com/webserviceURL jedoch auf dem lokalen Computer nicht funktioniert, da die Anmeldedomäne falsch ist. Was kann ich tun, damit die richtige Anmeldedomäne verwendet wird?

Roviuser
quelle

Antworten:

11

Ich habe versucht, das Gleiche zu tun. Greifen Sie mit einem vollqualifizierten Domänennamen auf eine Website im lokalen IIS zu und erfahren Sie immer wieder, wohin Sie mit dem IIS gehen sollen.

Auf jeden Fall müssen Sie nach dem Graben die Loopback-Prüfung für lokale IIS-Websites deaktivieren.

Siehe die folgende Microsoft-Support-Seite .

Für den Fall, dass die Seite verloren geht, habe ich Folgendes getan (was er im obigen Blog-Beitrag empfiehlt)

  1. Öffnen Sie den Registrierungseditor, indem Sie unter Ausführen regedit eingeben.
  2. Navigieren Sie zu HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Lsa \ MSV1_0
  3. Klicken Sie mit der rechten Maustaste auf MSV1_0, klicken Sie auf Neu und legen Sie fest, dass es sich um einen Wert mit mehreren Zeichenfolgen handelt.
  4. Geben Sie BackConnectionHostNames als Namen für den Eintrag ein und doppelklicken Sie darauf, um ihn zu ändern.
  5. Geben Sie die Hostnamen ein, die Sie verwenden müssen (z. B. code-journey.com).
  6. Starten Sie den IISAdmin-Dienst neu ("Start" -> "Verwaltung" -> "Dienste").

Hoffe das hilft.

cmb ..

Craig Beuker
quelle
3

Dies liegt an einer Sicherheitsfunktion namens LoopbackCheck.

Fehlermeldung, wenn Sie versuchen, lokal auf einen Server zuzugreifen, indem Sie dessen FQDN oder seinen CNAME-Alias ​​verwenden, nachdem Sie Windows Server 2003 Service Pack 1 installiert haben: "Zugriff verweigert" oder "Kein Netzwerkanbieter hat den angegebenen Netzwerkpfad akzeptiert"
http://support.microsoft .com / kb / 926642

Es gibt zwei Auflösungen:

Methode 1 (empfohlen): Erstellen Sie die Hostnamen der lokalen Sicherheitsbehörde, auf die in einer NTLM-Authentifizierungsanforderung verwiesen werden kann. Führen Sie dazu die folgenden Schritte für alle Knoten auf dem Clientcomputer aus:

  1. Klicken Sie auf Start, klicken Sie auf Ausführen, geben Sie regedit ein und klicken Sie dann auf OK.
  2. Suchen Sie den folgenden Registrierungsunterschlüssel und klicken Sie darauf: HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Lsa \ MSV1_0
  3. Klicken Sie mit der rechten Maustaste auf MSV1_0, zeigen Sie auf Neu, und klicken Sie dann auf Wert für mehrere Zeichenfolgen.
  4. Geben Sie in der Spalte Name BackConnectionHostNames ein, und drücken Sie die EINGABETASTE.
  5. Klicken Sie mit der rechten Maustaste auf BackConnectionHostNames, und klicken Sie dann auf Ändern.
  6. Geben Sie im Feld Wert den CNAME oder den DNS-Alias ​​ein, der für die lokalen Freigaben auf dem Computer verwendet wird, und klicken Sie dann auf OK.

    Hinweis: Geben Sie jeden Hostnamen in eine separate Zeile ein.

    Hinweis: Wenn der Registrierungseintrag BackConnectionHostNames als REG_DWORD-Typ vorhanden ist, müssen Sie den Registrierungseintrag BackConnectionHostNames löschen.

  7. Beenden Sie den Registrierungseditor und starten Sie den Computer neu.

Methode 2: Deaktivieren Sie die Authentifizierungs-Loopback-Prüfung, indem Sie den Registrierungseintrag DisableLoopbackCheck im Registrierungsunterschlüssel HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Lsa auf 1 setzen. Führen Sie die folgenden Schritte auf dem Clientcomputer aus, um den Registrierungseintrag DisableLoopbackCheck auf 1 zu setzen:

  1. Klicken Sie auf Start, klicken Sie auf Ausführen, geben Sie regedit ein und klicken Sie dann auf OK.
  2. Suchen Sie den folgenden Registrierungsunterschlüssel und klicken Sie darauf: HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Lsa
  3. Klicken Sie mit der rechten Maustaste auf Lsa, zeigen Sie auf Neu, und klicken Sie dann auf DWORD-Wert.
  4. Geben Sie DisableLoopbackCheck ein und drücken Sie die EINGABETASTE.
  5. Klicken Sie mit der rechten Maustaste auf DisableLoopbackCheck, und klicken Sie dann auf Ändern.
  6. Geben Sie im Feld Wert den Wert 1 ein, und klicken Sie dann auf OK.
  7. Beenden Sie den Registrierungseditor.
  8. Starte den Computer neu.
Greg Askew
quelle
1

Aufgrund einiger Erfahrungen beim Einrichten von SSO kann ich Ihnen sagen, dass der IE automatisch ein Kerberos-Ticket für die Anmeldung weitergibt, wenn sich die Site und der Client zusammen im Intranet befinden oder wenn sich die Site in der vertrauenswürdigen Zone befindet. Wenn der IE http://site.company.com/webservice sieht , wird davon ausgegangen, dass sich die Site im Internet befindet und keine Anmeldeinformationen für die Anmeldung übergeben werden.

Unter diesem Link finden Sie einige nützliche Informationen zu IIS, IE und Kerberos. http://blogs.msdn.com/b/friis/archive/2009/12/31/things-to-check-when-kerberos-authentication-fails-using-iis-ie.aspx

Wir haben festgestellt, dass das Zulassen des vollqualifizierten Domänennamens im Intranet darin besteht, dem Webserver ein Zertifikat bereitzustellen und SSL zu verwenden oder es der vertrauenswürdigen Zone hinzuzufügen.

Hoffe das hilft in Bezug auf dein Setup.

Alan Byargeon
quelle
Dies löst das Problem nicht. Ich habe bereits versucht, den vollqualifizierten Domänennamen zur vertrauenswürdigen Zone hinzuzufügen, ohne Erfolg. Ich denke jedoch, dass dies ein anderes Problem löst. Das Hinzufügen zur vertrauenswürdigen Zone ermöglicht die automatische Authentifizierung, die ich nicht benötige. Ich kann keine Anmeldeinformationen angeben, aber das Problem ist, dass meine angegebene Domäne nicht für Anmeldeinformationen akzeptiert wird. Sie hängt vom Computernamen ab.
Roviuser