简体   繁体   中英

ASP.Net re-direct from URL after authentication

I have a web app where user is required to authenticate to view certain pages.

Authentication is forced in web.config by doing a re-direct to Login.aspx

When user is on the Login.aspx page the URL is in the following format:

http://localhost:51101/Login.aspx?ReturnUrl=%2fSupport.aspx

After user authorizes I'd expect ASP.Net to re-direct the user to Support.aspx page, but this doesn't happen.

Support.aspx is not the only page that requires authentication, therefore I can't do a re-direct in a code-behind file.

Is there a web.config setting that I'm missing out?

Thank you

Edit:

Basic authentication logic

            if (!Membership.ValidateUser(user, password))
            {
                errorId.Text = "Incorrect username or password";
            }
            else
            {
                FormsAuthentication.SetAuthCookie(user, true);  
                // I can add a re-direct here, but it won't do the job since there are multiple pages that require authentication
            }

Are you using Forms Authentication? If so, you will need to call the

FormsAuthentication.RedirectFromLoginPage()

method in Login.aspx

Reference

I don't think there is a way to have ASP.NET to handle that for you. You might have to look for "returnUrl" in the querystring manually in Global.asax Session_Start() and redirect to the value if the user is logged in.

Edit: I'm wrong. Thanks to John Pick for correcting me.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM