Форум программистов, компьютерный форум, киберфорум
C#: Web, ASP.NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.94/48: Рейтинг темы: голосов - 48, средняя оценка - 4.94
1 / 1 / 0
Регистрация: 05.10.2011
Сообщений: 88

Как реализовать роли на сайте

21.03.2012, 20:32. Показов 9198. Ответов 48
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер. Нужна подсказка, о том как реализовать роли на сайте...

Подробней: есть сайт, допустим на нем 4 страницы. Есть также база данных в SQL Server , в которой есть таблица, в ней хранятся Логины, Пароли, а также id Роли. как сделать так, чтоб при логировании распознавался id роли и по этому id была доступна только одна (заранее определенная под эту роль ) страница . Будет 5 ролей, 4 роли для каждой страницы и пятая роль ( доступ будет ко всем 4 страницам)

Надеюсь все понятно...

Сейчас я остановился на этапе..пользователь в форму вбивает логин и пароль (запрос к базе ) и если пользователь есть, то перенаправляется на 1 из 4 страниц...но как выцеплять еще и роль и отсылать его на определенный сайт ?
Заранее извиняюсь...может что спрашиваю ерунду именно про роли..я не программист...так что строго не судите.
Спасибо !
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.03.2012, 20:32
Ответы с готовыми решениями:

Как вывести всех пользователей, привязанных к роли, кроме текущего (того, кто тоже в этой роли)?
Есть роль User (identity).Текущий пользователь заходит в приложение и видит список всех пользователей в роли User, выведенных на экран,...

Как реализовать комментарии на сайте
Всем привет. Я хотел бы узнать вот как сделать следующие вещи буду рад если поможете))))) 1. Возможность оставлять коментарий ( дата...

Как правильно реализовать поиск на сайте?
Если у вас есть статьи по реализации несложного поиска, скиньте пожалуйста. У меня пока есть код: $se= @$_GET; if($se) $search =...

48
1 / 1 / 0
Регистрация: 05.10.2011
Сообщений: 88
26.03.2012, 20:37  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от sau Посмотреть сообщение
Ту не понятно редирект на какую страницу, если одной роли доступно несколько страниц, или если у юзера несколько ролей с доступом на разные страницы.
Для каждой роли можно сделать по странице и редиректить чувака на эту страницу, а в шапке этих страниц указывать скажем ссылки, которые ему разрешены !?
0
 Аватар для sau
2875 / 2080 / 386
Регистрация: 22.07.2011
Сообщений: 7,837
26.03.2012, 20:40
и редиректить чувака на эту страницу
- на какую на эту ?, у чувака что только одна роль ? - ну тогда можно обозвать страницы по имени роли, и редиректить:
C#
1
2
PageHelpers.GetRolePage(string UserRole) { return UserRole+".aspx"; }
Response.Redirect(PageHelpers.GetRolePage(UserRole));
в общем сам смотри, это уже архитектурный вопрос твоего приложения.
0
1 / 1 / 0
Регистрация: 05.10.2011
Сообщений: 88
26.03.2012, 23:43  [ТС]
C#
1
2
3
4
5
if (Roles.IsUserInRole(TextBox1.Text, "KS"))
            {
 
              FormsAuthentication.RedirectFromLoginPage(TextBox1.Text, false);
              Response.Redirect("....aspx")
сделал такого плана ...для трех роей
0
1 / 1 / 0
Регистрация: 05.10.2011
Сообщений: 88
28.03.2012, 22:40  [ТС]
C#
1
2
3
4
5
6
if (Roles.IsUserInRole(TextBox1.Text, "KS"))
            {
 
              FormsAuthentication.RedirectFromLoginPage(TextBox1.Text, false);
              Response.Redirect("....aspx")
сделал такого плана ...для трех роей
все это чушь...
Цитата Сообщение от sau Посмотреть сообщение
http://msdn.microsoft.com/ru-ru/library/ms178428.aspx - Карта сайта, ее можно привязать к элементу меню и указать каким ролям какие узлы доступны, тем самым юзеру будет доступна навигация в соответствии с его ролями., ну и как обычно можно реализовать своего поставщика карты сайта.
Все легко и просто получилось ! Спасибо за советы !!
0
86 / 85 / 11
Регистрация: 12.07.2009
Сообщений: 465
08.10.2012, 00:30
T-SQL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/*
 
This provider works with the following schema for the tables of role data.
 
CREATE TABLE Roles
(
  Rolename Text (255) NOT NULL,
  ApplicationName Text (255) NOT NULL,
    CONSTRAINT PKRoles PRIMARY KEY (Rolename, ApplicationName)
)
 
CREATE TABLE UsersInRoles
(
  Username Text (255) NOT NULL,
  Rolename Text (255) NOT NULL,
  ApplicationName Text (255) NOT NULL,
    CONSTRAINT PKUsersInRoles PRIMARY KEY (Username, Rolename, ApplicationName)
)
 
*/
Тут тип данных имеется ввиду nvarchar?
0
86 / 85 / 11
Регистрация: 12.07.2009
Сообщений: 465
13.10.2012, 22:11
Столкнулся с такой проблемой!
Создал 2 роли.
1. simple
2. vip

1 - простой пользователь
2 - пользователь купивший абонемент

Соответственно тестирую как все работает.
сделал себе роль №1 все в хорошо.
сделал себе роль №2 тоже все хорошо.

находясь под ролью №2 открыл куки который хранит роли и скопировал его содержимое.
Удалил себе роль №2 и назначил роль №1.
Находясь в роли №1 открыл куки которые хранят роль и поменял его содержимое на то что скопировал с роли №2.
И вуаля!
Я пользователь с ролью №1 и допуском с роли №2.

Получается, пользователь может 1 раз купить абонемент и потом пользоваться им прижизненно подменяя куки?!

У кого какие соображения, как лечить?
0
 Аватар для sau
2875 / 2080 / 386
Регистрация: 22.07.2011
Сообщений: 7,837
14.10.2012, 03:25
Видимо, у Вас настройка кэширования ролей в куках (cacheRolesInCookie для roleManager-а)
Если брать настройки по умолчанию , то никаких данных по ролям в куках не сохраняется , только id сессии. А роли для текущего пользователя, достаются через SqlRoleProvider , тобишь из БД - по умолчанию.
0
86 / 85 / 11
Регистрация: 12.07.2009
Сообщений: 465
14.10.2012, 08:41
sau, то есть отменить кеширование роли в куках, я правильно понял?
0
86 / 85 / 11
Регистрация: 12.07.2009
Сообщений: 465
27.10.2012, 16:06
Не могу понять.
В каком виде хранятся роли у пользователя если у него несколько ролей.
Через запятую или каждая роль в отдельной строке?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
27.10.2012, 16:06

как реализовать два языка на сайте
Добрый день, занимаюсь сайтом (электронным журналом английского языка), столкнулся с проблемой смены языков. Есть одна база данных с...

Как реализовать на сайте онлайн консультант
Ребята, есть идея вкорячить в сайт онлайн консультации, как на этом сайте. Сбоку торчит ярлычок, Онлайн или Офлайн. Не сочтите за...

Как реализовать вывод обновлений на сайте?
Здравствуйте. Кто знает, обьясните пожалуйста хотя бы в самых общих чертах как сделать страницу с информацией о послених обновлениях на...

Компилятор кода на сайте , как реализовать ?
Добрый день , Господа ! Такой вопрос : Как реализовать компилятор кода на сайте (пример http://codingbat.com/prob/p198640); То есть...

Как реализовать на ASP TreeView, как на сайте MSDN On-Line и с такой же потрясающей скоростью?
У кого-нибудь есть идеи или примеры, как реализовать на ASP TreeView, как на сайте MSDN On-Line и с такой же потрясающей скоростью? ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
49
Ответ Создать тему
Новые блоги и статьи
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео: https:/ / vkvideo. ru/ video-240781534_456239017 YouTube: eY5-5PyI9NM Текстовая версия
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru