Ich habe eine asp.net C# MVC-Website. Es verwendet SimpleAuthentication und Formularauthentifizierung. Alles funktioniert einwandfrei und erfordert, dass sich Benutzer einloggen, um auf die Seiten zu gelangen. Ich habe jedoch einen Controller namens "ReportsController". Wann immer Sie zu den URLs der Aktionen innerhalb dieses Controllers gehen, erscheint immer "Authentifizierung erforderlich" im Browserfenster.Website fragt nach "Authentifizierung erforderlich" auf einem MVC-Controller, aber nicht andere
Es ist nur für diesen Controller und nicht für andere. Die URL lautet "www.domain.com/reports". Diese URL funktioniert einwandfrei, wenn ich von IIS und von meinem Entwicklungsserver, aber nicht von meinem Live-Server aus laufe. Dies führt IIS7 aus.
Ich habe meine web.config überprüft und es ist definitiv auf Formularauthentifizierung und nicht Windows festgelegt.
Jeder hat irgendwelche Ideen, warum URLs, die mit "/ Reports" beginnen, nicht funktionieren würden. Ich vermute, dass es etwas Spezifisches für den Server ist, wie eine IIS-Einstellung oder web.config-Änderung, aber ich kann nicht herausfinden, was das sein würde.
namespace ProjectName.Controllers
{
public class ReportsController : Controller
{
public ActionResult Index()
{
throw new SystemException("here");
return View();
}
}
}
Web.config:
<authentication mode="Forms">
<forms loginUrl="~/" timeout="2880" />
</authentication>
Hat Ihr Berichtscontroller benutzerdefinierte Attribute auf dem Controller oder Aktionen, die möglicherweise einen Filter anwenden, um die Sicherheit zu implementieren? – DaveRead
Ich benutzte [Authorize] für die Aktion, aber ich habe versucht, das für den Moment zu kommentieren und keine Freude zu bekommen. – user1616625
Ich habe den Code zu der Frage hinzugefügt, damit Sie sehen können. Nichts besonderes an der Steuerung oder Aktion. – user1616625