HTTP-500-Fehler bei KCD-Delegierung

Nora Huber 0 Zuverlässigkeitspunkte
2026-09-22T15:18:14.1766667+00:00

Benutzer erhalten HTTP-500-Fehler, wenn die Web-App versucht, im Namen der Benutzer Daten von der Backend-SQL-Datenbank abzufragen. Das blockiert das gesamte Tagesgeschäft und ist ein massiver Minuspunkt für unsere Anwender.

Wie konfigurieren wir die eingeschränkte Kerberos-Delegierung (KCD) korrekt, damit diese Zugriffe wieder funktionieren?

Windows für Unternehmen | Windows 365 Business
0 Kommentare Keine Kommentare

1 Antwort

Sortieren nach: Am hilfreichsten
  1. Domic Vo 34,170 Zuverlässigkeitspunkte Unabhängiger Berater
    2026-09-22T15:53:43.7133333+00:00

    Hallo,

    Der HTTP‑500 Fehler beim Zugriff auf die SQL‑Datenbank über die Web‑App ist ein klassisches Symptom dafür, dass die Authentifizierung im Delegierungsprozess nicht korrekt funktioniert. Wenn die Anwendung im Namen des Benutzers auf die Datenbank zugreifen soll, muss eingeschränkte Kerberos‑Delegierung (KCD) sauber konfiguriert sein. Ohne diese Konfiguration schlägt die Authentifizierungskette zwischen Webserver und SQL‑Server fehl, was die 500‑Fehler auslöst.

    Der erste Schritt ist sicherzustellen, dass die Service Principal Names (SPNs) für den SQL‑Dienstkonto korrekt gesetzt sind. Sie können dies mit setspn -L <Dienstkonto> prüfen. Für SQL muss ein SPN wie MSSQLSvc/<hostname>:1433 vorhanden sein. Danach muss das Webserver‑Dienstkonto in Active Directory so konfiguriert werden, dass es eingeschränkte Delegierung zu diesem SQL‑Dienstkonto durchführen darf. Dies geschieht in den Eigenschaften des Webserver‑Kontos im AD‑Benutzer und ‑Computer Snap‑In unter „Delegation“. Dort wählen Sie „Trust this user for delegation to specified services only“ und fügen den SQL‑Dienst hinzu.

    Wichtig ist auch, dass die Web‑App selbst mit einem Servicekonto läuft, das Kerberos‑Tickets anfordern und weitergeben darf. Wenn die Anwendung unter einem lokalen Konto oder unter Network Service läuft, ist Delegierung nicht möglich. Sie müssen sicherstellen, dass das AppPool‑Identitätskonto in IIS ein Domänenkonto ist, das für KCD freigegeben wurde.

    Nach diesen Änderungen sollten Sie die Kerberos‑Tickets mit klist auf dem Webserver prüfen, um sicherzustellen, dass ein Ticket für den SQL‑Dienst ausgestellt und weitergeleitet wird. Wenn weiterhin Fehler auftreten, aktivieren Sie Kerberos‑Debugging im Eventlog (System und Security‑Kerberos) und kontrollieren Sie, ob die Delegierung tatsächlich greift oder ob ein Fallback auf NTLM erfolgt, was in diesem Szenario nicht funktioniert.

    Zusammengefasst: SPNs korrekt setzen, Delegierung im AD auf das Webserver‑Konto beschränken, AppPool‑Identität auf ein Domänenkonto umstellen und Kerberos‑Tickets prüfen. Damit sollte die eingeschränkte Kerberos‑Delegierung greifen und die Web‑App wieder im Namen der Benutzer auf die SQL‑Datenbank zugreifen können.

    Domic Vo.

    War diese Antwort hilfreich?

    0 Kommentare Keine Kommentare

Ihre Antwort

Antworten können von Fragestellenden als „Angenommen“ und von Moderierenden als „Empfohlen“ gekennzeichnet werden, wodurch Benutzende wissen, dass diese Antwort das Problem des Fragestellenden gelöst hat.