ASP.Net перенаправить с URL после аутентификации - PullRequest
0 голосов
/ 08 февраля 2011

У меня есть веб-приложение, в котором пользователь должен пройти аутентификацию для просмотра определенных страниц.

Аутентификация в web.config принудительная путем повторного обращения к Login.aspx

Когда пользовательнаходится на странице Login.aspx, URL-адрес имеет следующий формат:

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

После того, как пользователь авторизуется, я ожидаю, что ASP.Net перенаправит пользователя на Support.aspxстраница, но этого не происходит.

Support.aspx - не единственная страница, требующая аутентификации, поэтому я не могу выполнить перенаправление в файле с выделенным кодом.

Есть ли настройка web.config, которую япропускаю?

Спасибо

Редактировать:

Базовая логика аутентификации

            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
            }

Ответы [ 2 ]

3 голосов
/ 08 февраля 2011

Вы используете проверку подлинности с помощью форм? Если это так, вам нужно будет позвонить на

FormsAuthentication.RedirectFromLoginPage()

метод в Login.aspx

Ссылка

0 голосов
/ 08 февраля 2011

Я не думаю, что есть способ иметь ASP.NET, чтобы справиться с этим для вас.Возможно, вам придется искать «returnUrl» в строке запроса вручную в Global.asax Session_Start () и перенаправлять на значение, если пользователь вошел в систему.

Редактировать: я не прав.Спасибо Джону Пику за поправку.

...