ReturnUrl
es un poco feo. Me gustaría usar redirect
en su lugar. ¿Cómo puedo especificar el nombre del parámetro que se debe usar para las URL de redireccionamiento de autenticación de formularios junto con el atributo [Authorize]
? ¿O tengo que crear una implementación IAuthorizationFilter? :(¿Cómo puedo cambiar el nombre del parámetro "ReturnUrl" utilizado por ASP.NET MVC?
Ejemplo:
[Authorize]
public class Tools : Controller
{
public ActionResult Index()
{
return View();
}
}
Cuando un usuario que no está conectado visitas http://example.com/tools, me gustaría que se reenvíen a http://example.com/account/logon?redirect=%2ftools
, en lugar del predeterminado http://example.com/Account/LogOn?ReturnUrl=%2ftools
Para el/la cuenta/logon parte, puede modificar mis rutas en Global.asax y cambiar
<authentication mode="Forms">
<forms loginUrl="~/account/logon" timeout="2880" />
</authentication>
en web.config. Pero no sé cómo cambiar el Ret parámetro urnUrl
Sé que llego muy tarde a esta discusión, pero tengo el mismo problema, así que publiqué una solicitud de mejora para esto con Microsoft. http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/3049874-make-returnurl-a-configurable-key-name-instead-o Siéntase libre de votar, comentar, etc. Con suficientes votos, puede llamar su atención. –