2014-10-09 5 views
1

Друзей,пользовательские поставщик ролей с ASP.net MVC - Изменение Роли

Глядя на некоторую помощь в ниже ситуациях:

Пользователь систем имеет несколько ролей - Role A и B. Роли

С ролью A - пользователь может получить доступ к представлениям - PageA, PageB.

С ролью B - пользователь может получить доступ к представлениям - PageP, PageQ.

У меня есть пользователь с двумя ролями - роль A и роль B с ролью по умолчанию как роль A. Проблема: когда пользователь входит в систему с обеих ролей и роль по умолчанию как роль Пользователь должен уметь виды доступа - PageA & PageB. Я хотел бы, чтобы в макете выпадало изображение, чтобы показать роли этого пользователя. Когда роль в выпадающем списке изменяется на роль B, тогда пользователь должен иметь доступ к представлениям PageP PageQ и наоборот.

Возможно ли это сделать с помощью поставщика пользовательской роли и проверки подлинности Windows с помощью Asp.Net MVC?

Любые идеи приветствуются.

Спасибо заранее, DC

ответ

1

За сценой Роль поставщика - Если новая страница запрашивается, назначенные роли пользователя сохраняются в IPrincipal на текущий поток. Это происходит на очень ранней стадии жизненного цикла страницы.

Вы не должны удалять/назначать роли IPrincipal в середине жизненного цикла страницы.

Когда роль в выпадающем списке изменяется на роль B, то пользователь должен быть в состоянии получить доступ с видом PageP & PageQ и наоборот.

Для этого вы не хотите манипулировать объектом IPrincipal.

Вместо этого используйте простую логику, например назначена роль

  1. заселить пользователя на DROPDOWNLIST
  2. Если выбрана роль A, дисплей страницаА, страницаБ
  3. Если выбрана роль B, дисплей PageP, PageQ
Смежные вопросы