Wir verwenden die Formularauthentifizierung mit Rollen, um den Zugriff auf bestimmte Seiten und Bereiche einer Website zu beschränken. Wenn ein Benutzer nicht autorisiert ist, weil er entweder nicht angemeldet ist oder nicht die erforderliche Rolle hat, wird er zur Anmeldeseite mit einer Return-to-Url weitergeleitet.
Wir definieren den erforderlichen Zugriff in der web.config mit Hilfe der Autorisierungs-Tags wie:
<authorization>
<deny users="?"/>
</authorization>
Die Webanwendung, an der wir arbeiten, verwendet HttpContext.Current.RewritePath für freundlichere URLs und dynamische Seiten. So wird eine Anforderung für "/MyPages/MyDocuments.aspx!" in "/PageTypes/Library.aspx" oder etwas Ähnliches umgeschrieben.
Wenn die Anwendung jedoch umleitet, weil ein Benutzer keine Berechtigung hat, wird der ReWritePath anstelle der Raw URL verwendet.
Was muss ich überschreiben, so dass die returnto URL die angeforderte URL anstelle der tatsächlichen psychischen Pfad ist?