Como lidar elegantemente ReturnUrl ao usar UrlRewrite em WebForms do ASP.NET 2.0
Eu tenho uma pasta com várias páginas .aspx que eu quero restringir o acesso. Eu adicionei web.config a essa pasta com<deny users="?"/>
.
O problema é que ReturnUrl é gerado automaticamente com caminho físico para o arquivo .aspx enquanto estou usando UrlRewrite.
Existe uma maneira de manipular ReturnUrl sem fazer verificação de autenticação manual e redirecionamento? Existe uma maneira de definir ReturnUrl de code-behind ou de web.config?
EDITAR: O aplicativo está usando o ASP.NET 2.0 WebForms. Eu não posso usar o roteamento 3.5.
EDIT 2: Parece que o código de status 401 nunca é capturado. Ele retorna 302 para a página protegida e redireciona para a página de login com ReturnUrl. Não devolve 401 para a página protegida. Hmm ... Interessante ... Ref:http://msdn.microsoft.com/pt-br/library/aa480476.aspx
Isso dificulta as coisas ... Talvez eu tenha que escrever regras de mapeamento de reescrita reversa para regex match ReturnUrl e substituí-lo se ele não retornar 401 ... Se ele retornar 401, eu posso definir RawUrl como Response.RedirectLocation ou substituir ReturnUrl com RawUrl.
Alguém mais tem alguma outra ideia?