Integrierte Windows-Authentifizierung
von Mike Wasson
Integrierte Windows-Authentifizierung ermöglicht Benutzern die Anmeldung mit ihren Windows-Anmeldeinformationen mithilfe von Kerberos oder NTLM. Der Client sendet Anmeldeinformationen im Autorisierungsheader. Die Windows-Authentifizierung ist für Intranetumgebungen am besten geeignet. Weitere Informationen finden Sie unter Windows-Authentifizierung.
Vorteile | Nachteile |
---|---|
In IIS integriert. | Nicht für Internetanwendungen empfohlen. |
Sendet die Benutzeranmeldeinformationen nicht in der Anforderung. | Erfordert Kerberos- oder NTLM-Unterstützung im Client. |
Wenn der Clientcomputer zur Domäne gehört (z. B. Intranetanwendung), muss der Benutzer keine Anmeldeinformationen eingeben. | Der Client muss sich in der Active Directory-Domäne befinden. |
Hinweis
Wenn Ihre Anwendung in Azure gehostet wird und Sie über eine lokale Active Directory-Domäne verfügen, sollten Sie ihre lokale AD mit Azure Active Directory verbinden. Auf diese Weise können sich Benutzer mit ihren lokalen Anmeldeinformationen anmelden, die Authentifizierung wird jedoch von Azure AD ausgeführt. Weitere Informationen finden Sie unter Azure-Authentifizierung.
Um eine Anwendung zu erstellen, die integrierte Windows-Authentifizierung verwendet, wählen Sie die Vorlage "Intranetanwendung" im MVC 4-Projekt-Assistenten aus. Diese Projektvorlage fügt die folgende Einstellung in die Datei "Web.config" ein:
<system.web>
<authentication mode="Windows" />
</system.web>
Auf der Clientseite funktioniert integrated Windows-Authentifizierung mit jedem Browser, der das Negotiate-Authentifizierungsschema unterstützt, das die meisten wichtigsten Browser enthält. Für .NET-Clientanwendungen unterstützt die HttpClient-Klasse Windows-Authentifizierung:
HttpClientHandler handler = new HttpClientHandler()
{
UseDefaultCredentials = true
};
HttpClient client = new HttpClient(handler);
Windows-Authentifizierung anfällig für Website-Anforderungsfälschungsangriffe (CSRF). Weitere Informationen finden Sie unter Verhindern von websiteübergreifenden CsrF-Angriffen (Cross Site Request Forgery).