Wie erhalte ich den Windows-Benutzernamen, wenn die Identität in asp.net "true" lautet?

Ich erstelle eine intranet asp.net-mvc-anwendung, auf die jeder im Unternehmen Zugriff haben sollte. Ich muss die Website imitiert für den Datenbankzugriff usw. ausführen, aber ich möchte wissen, wer jeder Benutzer ist.

Wenn ich mich anschauePage.User.Identity.Name es ist leer. Ist es möglich, den Windows-Kontonamen des Benutzers abzurufen, obwohl die Site imitiert ausgeführt wird?

Bearbeiten: Hier noch ein paar Infos. Ich habe eine Site in IIS 6, auf der anonymer Zugriff aktiviert ist. Die Site wird unter einem Systemkonto ausgeführt, das Zugriff auf die Datenbank hat (da nicht alle Mitarbeiter Zugriff auf die Datenbank haben).

Meine web.config hat<authentication mode="Windows" /> und<identity impersonate="true"/>

Mein Ziel ist es, dass sich die Benutzer nicht anmelden müssen - die Tatsache, dass sie in unserem Netzwerk angemeldet sind (und die Tatsache, dass sich die Site nicht auf einer externen IP befindet), ist ausreichend für die Authentifizierung. Ich möchte nur wissen, wer der Benutzer ist, um Änderungen, die er vornimmt, usw. nachzuverfolgen.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage