Molto probabilmente è perché il pool di applicazioni in cui è in esecuzione l'applicazione MVC ha la modalità pipeline impostata su Integrata. Se si imposta su classico dovrebbe funzionare bene. Alcune spiegazioni, discussioni e link qui:
HttpContext.Current .User è nullo anche se l'autenticazione di Windows è attiva