Glimpse.Net bietet Serverdebugging in ausgerollten Webanwendung

Heute habe ich ein Package in NuGet entdeckt, welches die Arbeit vieler Web-Entwickler erleichtern wird. Die rede ist von Glimpse (http://getGlimpse.com).

Glimpse ist, wie es sich selbst bezeichnet, ein Client-side Debuggingtool für Webanwendungen. Mittels Glimpse kann man ASP.NET WebForms und ASP:NET MVC-Anwendungen debuggen. Dazu muss man lediglich das Package mittels Nuget einbinden.

 PM>  Install-Package Glimpse

Weiterlesen »

Probleme mit dem AntiForgeryToken in MVC2

In den letzten Tagen habe ich ein paar Probleme mit dem Antiforgerytoken des Html-Helpers. Bei einem Timeout des Authentication-Tokens und einen nachfolgenden Redirect auf die Loginseite wird ein Serverfehler ausgelöst. In der Version 3 von MVC existiert dieses Problem nicht mehr. Ein Test hat erwiesen, dass es hier eine Überarbeitung gegeben hat.
Einen Workaround habe ich nun auch gefunden. Wenn man die Methoden von Version 2 und 3 vergleicht, sieht man eine Überarbeitung beim Laden des Cookies. Dies lässt sich beim Einsatz von Version 2 damit umgehen, dass man die Cookies beim Laden der Loginview entfernt.
[csharp]
public ActionResult LogOn()
{
FormsService.SignOut();
Response.Cookies.Clear();

//Workaround
Request.Cookies.Clear();

Session.Clear();
Session.Abandon();

return View();
}
[/csharp]

Das Problem scheint wohl nur dann aufzutreten, wenn das Timeout des ApplicationPool des IIS abgelaufen ist.

Sichere Anmeldungen aus Webseiten mit HMAC

Wer Anmeldungen aus einer Webseite ermöglich, muss sich mit vielen Angriffsszenarien beschäftigen, um die Webseite abzusichern. Die bekanntesten Angriffe können durch Mittel aus den Frameworks meistens schon (weitestgehend) blockiert werden. Dazu zählen z.B. SQL Injection, XSS und CSRF. Es gibt aber auch noch MITM, Man-in-the-middle-Attacken. Bei diesen befindet sich der Angreifer zwischen Ihnen und dem Server. Somit kann er jeden Datenverkehr abhören und nach belieben ändern. Selbst eine SSL-Verbindung bietet hier nicht immer den gewünschten Schutz.
Weiterlesen »

Dependency Injection mit Ninject und ASP.NET MVC 3

In den letzten Tagen habe ich mich mal etwas näher mit der neuen Auskopplung des MVC Frameworks (ASP.NET MVC 3) beschäftigt. Nicht nur die Viewengine Razor ist hinzugefkommen, es hat sich auch einiges unter der Haube getan. Mich interessiert aktuell die vereinfachte Einbindung von Dependency Injection (IoC). Als DI-Container verwende ich Ninject und bin bisher auch sehr zufrieden damit.
Weiterlesen »

Paging für beliebige Elemente in MVC

Auf der Suche nach einer einfachen und eleganten Lösung für Paging in MVC bin ich auf das Blog von Martijn Boland gestoßen. Er hat eine kleine Assembly mit den erforderlichen Klassen und Extensions geschrieben. Enthalten ist eine angepasste List mit Metainformation für das Paging und eine Extension zum Rendern des Pagers. Dieser kann mittels CSS weiter angepasst werden. Da der Quellcode frei verfügbar ist, kann man die Quellen weiter nach eigenen Wünschen verfeinern.
Ich nutze eine angepasste Version in meinen Projekten und bin sehr zufrieden. Als Alternative kann man sich das MVC Contrib Projekt auf Codeplex mal anschauen. Hier hat mich aber der Pager nicht überzeugt. Die Darstellung ist nicht so, wie ich sie mir vorstelle. Da es aber ein Opensource-Projekt ist, wird da bestimmt noch was kommen.

Einen wichtigen Bereich unterstützt die Assembly aber nicht, das Sortieren und Filtern. Dazu habe ich aber eine weitere Extension, die ich demnächst hier veröffentlichen werde.