FormsAuthentication.RedirectFromLoginPage()
От: fewl  
Дата: 23.06.10 20:48
Оценка:
Здравствуйте.
Пытаюсь сделать авторизацию пользователей при запросе конкретной страницы aspx.

web.config:
<authentication mode="Forms">
    <forms loginUrl="login.aspx"/>
  </authentication>
  <authorization>
    <deny users="?"/>
  </authorization>


В login.aspx.cs при запросе просматриваем содержит ли запрос закрытую страницу и не делаем перенаправление на изначально запрошенную страницу:
 if (FormsAuthentication.GetRedirectUrl("anonymous", false).Contains("staff") == false)
            FormsAuthentication.RedirectFromLoginPage("anonymous", false);

Естественно, что FormsAuthentication.RedirectFromLoginPage() здесь использовать нельзя, а то у нас получится, что мы авторизовали любого пользователя. Простой редирект делать тоже нельзя — страничка зациклится.
Подскажите, что делают в подобных случаях нормальные люди?
Re: FormsAuthentication.RedirectFromLoginPage()
От: pr0ff  
Дата: 24.06.10 06:15
Оценка:
Здравствуйте, fewl, Вы писали:

F>Здравствуйте.

F>Пытаюсь сделать авторизацию пользователей при запросе конкретной страницы aspx.

  <location path="admin">
    <system.web>
      <authorization>
        <allow users="..." />
        <deny users="*" />
      </authorization>
    </system.web>
  </location>
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Re[2]: FormsAuthentication.RedirectFromLoginPage()
От: fewl  
Дата: 24.06.10 13:23
Оценка:
Прошу прощения за непонятливость, но вроде всё сделал, как надо, а при запросе страниц из каталога перехода на страницу авторизации нет. Ниже более полный код из web.config

<authentication mode="Forms">
    <forms name="AdminLogin" loginUrl="~/staff/login.aspx" defaultUrl="~/staff/staff.aspx" protection="All">
      
    </forms>
  </authentication>
  <authorization>
    <allow users="*" />
  </authorization>
  <compilation debug="true">
  </compilation>
        
    <customErrors mode="Off" />
        
  </system.web>

  <location path="~/staff">
    <system.web>
      <authorization>
        <allow users="user" />
        <deny users="*" />
      </authorization>
    </system.web>
  </location>
Re[3]: FormsAuthentication.RedirectFromLoginPage()
От: pr0ff  
Дата: 24.06.10 15:11
Оценка:
Здравствуйте, fewl, Вы писали:

F>Прошу прощения за непонятливость, но вроде всё сделал, как надо, а при запросе страниц из каталога перехода на страницу авторизации нет. Ниже более полный код из web.config

path="staff.aspx"
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Re[4]: спасибо
От: fewl  
Дата: 24.06.10 16:51
Оценка:
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.