HttpContext.Current.User ist nicht mit aktivierter Windows-Authentifizierung ausgefüllt

Ich habe eine asp.net-Intranetanwendung, die die Windows-Authentifizierung verwendet. Ich habe die Anwendung vor Jahren mit VS 2005 erstellt, und das Windows-Authentifizierungsbit hat einwandfrei funktioniert. Meine web.config hat folgendes (innerhalb von configuration -> system.web element):

    <authentication mode="Windows" />
    <authorization>
        <deny users="?"/>
    </authorization>

Ich teste dies in Firefox, um zu bestätigen, dass die Anmeldeinformationen erforderlich sind, und werde beim ersten Zugriff auf die Site zur Eingabe meiner Netzwerkanmeldeinformationen aufgefordert. Wenn diese ungültig sind, wird mir dies verweigert.

Wenn ich jedoch versuche, auf HttpContext.Current.User.Identity zuzugreifen, enthält das Objekt leere Zeichenfolgen für Name und AuthenticationType und Authenticated = false. Ich dachte, ich müsste möglicherweise den WindowsTokenRoleProvider aktivieren, nachdem ich mich in den Interwebs umgesehen hatte, und dies änderte nichts.

    <roleManager defaultProvider="WindowsProvider" enabled="true" cacheRolesInCookie="false">
        <providers>
            <clear/>
            <add name="WindowsProvider" type="System.Web.Security.WindowsTokenRoleProvider"/>
        </providers>
    </roleManager>

Zwei Dinge, die ich getan habe, seit ich das letzte Mal gesehen habe, dass es funktioniert, sind das Upgrade des Projekts auf VS 2008 über den Konvertierungsassistenten. Außerdem habe ich es einige Monate lang abgelegt, während meine Kollegen möglicherweise hier oder da daran gearbeitet haben . Ich war mir ziemlich sicher, dass das einzige, was meine User.Identity betrifft, die oben genannten Werte in der web.config sind, aber anscheinend mache ich etwas falsch. Stößt noch jemand auf ein ähnliches Problem oder sehe ich etwas, was ich falsch mache? Vielen Dank.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage