dev.net.ua

Українська Спільнота Розробникiв
 
Ласкаво просимо до dev.net.ua Увійти | Приєднатися | Допомога | Увійти Live ID
в Пошук

Membership(FormsAuthentication)

Останнє повідомлення 08-05-2008, 5:29 від PomAH4uK. 2 відповіді.
Сортувати: Попереднє Наступне
  •  01-05-2008, 15:48 5986

    Membership(FormsAuthentication)

    1)В мене така проблема коли користувач Логінується на тій сторінці що перебуває, тобто коли спрацьовує>>

    <<<FormsAuthentication.SetAuthCookie>>> то Юзер вважаэться ввійшовшим коли тільки перейде на іншу сторінку або просто обновить цю, якщо спрацьовує рядок <<<FormsAuthentication.RedirectFromLoginPage>>> то все нормально юзер вважаэться зарегістрованим вже. Що в цьому коді не так?

    if (Membership.ValidateUser(log.UserName, log.Password)){

    if (Request.QueryString["ReturnUrl"] != null){FormsAuthentication.RedirectFromLoginPage(log.UserName, log.RememberMeSet);}

    else{FormsAuthentication.SetAuthCookie(log.UserName, log.RememberMeSet);}}

    2)От я ще ніколи не ставив нічого ще на хостинг. І от таке питання, як мені можна установити свій сайт з цим Membership-ом, бо там на хостингу дозволяэться тільки або Sql-скрипт, або вручну створювати. Я пробував робити скрипт зі своєї бази у SQL2000 і створювати нову БД там же за допомогою цього скрипта, то цей Membership не хоче працювати, каже що йому треба якусь схему.

    ХЕЛПGeeked


    Я студент, і не відмінник, тому мої слова сприймайте з усмішкою, за базар не відповідаю:))
  •  04-05-2008, 14:09 5999 у відповідь на 5986

    Re: Membership(FormsAuthentication)

    PomAH4uK:
    1)В мене така проблема коли користувач Логінується на тій сторінці що перебуває, тобто коли спрацьовує>>

    <<<FormsAuthentication.SetAuthCookie>>> то Юзер вважаэться ввійшовшим коли тільки перейде на іншу сторінку або просто обновить цю, якщо спрацьовує рядок <<<FormsAuthentication.RedirectFromLoginPage>>> то все нормально юзер вважаэться зарегістрованим вже. Що в цьому коді не так?

    if (Membership.ValidateUser(log.UserName, log.Password)){

    if (Request.QueryString["ReturnUrl"] != null){FormsAuthentication.RedirectFromLoginPage(log.UserName, log.RememberMeSet);}

    else{FormsAuthentication.SetAuthCookie(log.UserName, log.RememberMeSet);}}

    2)От я ще ніколи не ставив нічого ще на хостинг. І от таке питання, як мені можна установити свій сайт з цим Membership-ом, бо там на хостингу дозволяэться тільки або Sql-скрипт, або вручну створювати. Я пробував робити скрипт зі своєї бази у SQL2000 і створювати нову БД там же за допомогою цього скрипта, то цей Membership не хоче працювати, каже що йому треба якусь схему.

    ХЕЛПGeeked

    1) В этом коде все нормально, только тут происходит следующее, механизм авторизации asp сработал в событиях намного раньше события в котором у тебя находится код (наверное это событи Page_Load), он установил что пользователь не авторизован и создал для него, в соответствии с разными настройками, пользователя по умолчанию. Когда выполняется код FormsAuthentication.SetAuthCookie(log.UserName, log.RememberMeSet) ты только предписываешь, что к странице будукт прикреплены и отправлены авторизированные cookie, но механизм asp  никак не догадается что необходимо поменять текущего пользователя. Самый простой способ это сделать полный цикл обработки страницы заново к примеру просто добавив в
    else{
    FormsAuthentication.SetAuthCookie(log.UserName, log.RememberMeSet);
    Response.Redirect("Login.aspx");//или как там у тебя страница называется, хотя вообще то по логике здесь должен стоять redirect на страницу не логина а к примеру первую из меню, куда необходима авторизация
    }

    2) На хостинге видимо SQL 2005, поставь себе его и при скриптовании базы выбери не только таблицы, но и создание схемы aspnet_


    С уважением, Вячеслав
  •  08-05-2008, 5:29 6027 у відповідь на 5999

    Re: Membership(FormsAuthentication)

    Дякую, перше допомогло, а друге ще буду пробуватиBig Smile


    Я студент, і не відмінник, тому мої слова сприймайте з усмішкою, за базар не відповідаю:))
Переглядати як новосний Блог RSS в XML