Я создал страницу входа, где пользователи должны указать имя пользователя и пароль, чтобы иметь доступ к определенным ресурсам, где они могут загружать изображения или просто редактировать некоторые описания о себе. Мой файл web.config выглядит следующим образом:Как проверить, зарегистрирован ли пользователь в
<authentication mode="Forms">
<forms loginUrl="Secure/Login.aspx" defaultUrl="index.aspx" name=".ASPXFORMSAUTH" timeout="30"/>
</authentication>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
<location path="Secure">
<system.web>
<authorization>
<deny users="?"/>
</authorization>
</system.web>
</location>
Таким образом, когда пользователь ввел имя пользователя и PW, он перенаправляется на страницу index.aspx. В зависимости от того, вошел пользователь или нет, index.aspx должен показать или скрыть некоторые вещи. Это, как я могу проверить, если он вошел в систему:
bool isLoggedIn = HttpContext.Current.User.Identity.IsAuthenticated;
if (isLoggedIn)
{
placeHolder2.Visible = true;
...
}
Теперь проблема заключается в том, что: HttpContext.Current.User.Identity.IsAuthenticated; ALWAYS возвращает true, поэтому несанкционированные пользователи будут видеть вещи, которые должны быть скрыты.
Я не уверен в: HttpContext.Current.User.Identity.IsAuthenticated; Я просто искал «Как проверить, зарегистрирован ли пользователь», и были предложения: HttpContext.Current.User.Identity.IsAuthenticated;
Я хочу только людей, которые вошли в систему, чтобы просмотреть личные вещи. Как мне это сделать? Как сделать: HttpContext.Current.User.Identity.IsAuthenticated возвращает только true, когда пользователь вошел в систему? Благодаря
дубликат http://stackoverflow.com/questions/6086529/ how-to-check-user-is-logged-in-in-asp-net-c – Avitus
Я видел этот поток, но это не помогает мне решить мою проблему. – AomSet
Является ли HttpContext.Current.User.Identity.IsAuthenticated true для анонима ous пользователь тоже? – Win