Ich habe eine Intranetsite in MVC6 mit ASP.NET Core RC2 erstellt. Ich möchte den Windows-Benutzernamen der Person abrufen, die auf die Intranetsite zugreift.So erhalten Sie den aktuellen Windows-Benutzer mit ASP.NET Core RC2 MVC6 und IIS7
Wenn also Jim zur Intranet-Site geht, möchte ich, dass die Site "Domain \ Jim" erhält, während Anne, wenn sie zur Intranetsite geht, die Site "Domain \ Anne" erhalten soll.
Nur die Windows-Authentifizierung ist auf meinem IIS-Server aktiviert, die anonyme Authentifizierung ist deaktiviert.
Meine Website ist so eingerichtet, dass sie die Windows-Authentifizierung verwendet und die anonyme Authentifizierung deaktiviert.
<system.web>
<authentication mode="Windows" />
<authorization>
<deny users="?"/>
</authorization>
</system.web>
Durch Debug kann ich System.Security.Principal.WindowsIdentity.GetCurrent().Name
verwenden, aber das natürlich gibt "IIS AppPool \ AltraSocial" auf dem IIS-Server.
Ich habe viele Beispiele aus älterer Version von ASP.NET mit HttpContext gefunden, und ich habe versucht, das in meine Steuerung mit den folgenden zu injizieren, aber userName endet mit null.
Wie ist der richtige Weg, den Windows-Benutzernamen an eine Intranetsite in ASP.NET Core RC2 MVC6 zu übergeben?
Haben Sie den anonymen Zugriff auf Ihre Website deaktiviert? – DavidG
Ja. Ich habe es mit dem folgenden innerhalb deaktiviert. authorization> ich meine Frage mit dem Block aktualisiert haben. –
Kyle
Haben Sie eine Authentifizierungs-Middleware registriert? – DavidG