Перенаправление администратора на страницу администратора и пользователя на страницу пользователя
7217 просмотра
2 ответа
У меня тут какая-то проблема. Когда пользователь вводит свой идентификатор, он отображает главную страницу и его для пользователя, но когда администратор вводит свой идентификатор, он входит на главную страницу пользователя, и мне приходится нажимать сайт администратора на верхней гиперссылке, и он автоматически выходит из системы, и как только я вхожу назад admin passwrd, а затем только перенаправление на страницу администратора. как сделать так, как только пользователь вводит свой пароль, он перенаправляет на страницу пользователя и, как только администратор вводит пароль администратора в логине, он перенаправляет на admin? У меня есть 3 роли, которые являются admin , персонал и пользователь. Итак, я предоставлю вам мой код aspx, а также мой код vb, который работает за программой. Пожалуйста, помогите мне. Спасибо
ASPX
<asp:Login ID="Login1" runat="server" BackColor="#009933" BorderColor="Red"
BorderPadding="4" BorderStyle="Ridge" BorderWidth="1px" Font-Names="Verdana"
Font-Size="0.8em" ForeColor="Red"
DestinationPageUrl="~/MainPage.aspx" style="text-align: center" Height="171px"
Width="266px" VisibleWhenLoggedIn="True" TextLayout="TextOnTop">
<TextBoxStyle Font-Size="0.8em" />
<LoginButtonStyle BackColor="#FFFBFF" BorderColor="#CCCCCC" BorderStyle="Solid"
BorderWidth="1px" Font-Names="Verdana" Font-Size="0.8em" ForeColor="#284775" />
<InstructionTextStyle Font-Italic="True" ForeColor="Black" />
<TitleTextStyle BackColor="#5D7B9D" Font-Bold="True" Font-Size="0.9em"
ForeColor="White" />
</asp:Login>
VB
Partial Class Login
Inherits System.Web.UI.Page
End Class
web.config для папки персонала
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<authorization>
<allow roles="staff" /> <deny users="" />
</authorization>
</system.web>
</configuration>
web.config для папки администратора
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<authorization>
<allow roles="adminstrator" /> <deny users="" />
</authorization>
</system.web>
</configuration>
web.config - root
<configuration>
<appSettings/>
<connectionStrings>
<add name="ConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\ASPNETDB.MDF;Integrated Security=True;User Instance=True" providerName="System.Data.SqlClient"/>
<add name="ASPNETDBConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\Se7en\Desktop\Personal\VIVA\1\App_Data\ASPNETDB.MDF;Integrated Security=True;Connect Timeout=30;User Instance=True" providerName="System.Data.SqlClient"/>
</connectionStrings>
Автор: braveen kumar
Источник
Размещён: 13.07.2019 08:45
Ответы (2)
0 плюса
Вы можете сделать это в вашем событии нажатия кнопки входа в систему:
switch (role)
{
case 0:
Response.Redirect("MainPage.aspx");
break;
case 1:
Response.Redirect("StaffPage.aspx");
break;
case 2:
Response.Redirect("UserPage.aspx");
break;
}
вам нужно установить значение роли в вашем валидном коде пользователя.
Автор: SarahX Размещён: 09.11.2011 02:090 плюса
Только что увидел ваш отредактированный вопрос ... Какова ваша навигация ? Какие элементы управления вы используете? какой тип MembershipProvider (если есть) вы используете?
Вы все еще можете попробовать использовать treeView или элемент управления меню (привязанный к файлу карты сайта). Использование этих элементов управления позволяет использовать securityTrimming ( подробности см. В msdn ).
например (из MSDN):
<system.web>
<!-- …other configuration settings -->
<siteMap defaultProvider="XmlSiteMapProvider" enabled="true">
<providers>
<add name="XmlSiteMapProvider"
description="Default SiteMap provider."
type="System.Web.XmlSiteMapProvider "
siteMapFile="Web.sitemap"
securityTrimmingEnabled="true" />
</providers>
</siteMap>
</system.web>
Этот атрибут изменит видимость ссылок, появляющихся в ваших элементах управления навигацией. Например, пользователи с ролью администратора - будут видеть только те ссылки, к которым им разрешено переходить.
Не могли бы вы показать нам свои элементы управления навигацией? спасибо заранее
- Управление (Login, LoginStatus, ...)
- Понимание управления ролями (как ... членство, провайдер, роли, также)
Вопросы из категории :
- asp.net Контрольный список для проверки подлинности Windows IIS 6 / ASP.NET?
- asp.net Валидация клиентской стороны ASP.Net
- asp.net .NET - получить протокол, хост и порт
- asp.net Как получить полный URL страницы, на которой я нахожусь в C #
- vb.net Setting Objects to Null/Nothing after use in .NET
- vb.net Случайное целое число в VB.NET
- vb.net Лучший способ в asp.net заставить https для всего сайта?
- vb.net Кто-нибудь знает библиотеку для работы с парами количество / единица измерения?
- authentication Окончательное руководство по аутентификации на основе форм
- authentication Как бы вы внедрили аутентификацию на основе FORM без резервной базы данных?
- authentication Привилегии PostgreSQL 8.3 не обновлены - неправильное использование?
- response.redirect Response.Redirect с POST вместо Get?
- response.redirect Response.Redirect () в iFrame, перенаправить родительское окно
- response.redirect Перенаправление администратора на страницу администратора и пользователя на страницу пользователя
- response.redirect Можем ли мы использовать Response.Flush () вместо Response.End ()
- asp.net-roles Настраиваемый атрибут авторизации (продолжение)
- asp.net-roles Добавление пользователя в роль ASP.NET Identity
- asp.net-roles Переход в Redirect Loop для входа в ASP.NET, когда пользователь не выполняет роль