Установка ролей с помощью экземпляра GenericPrincipal - PullRequest
1 голос
/ 03 января 2012

Недавно я задал вопрос о как использовать вызовы ajax для аутентифицируйте пользователя в asp.net mvc , и я получил свой ответ.

Но тогда решено использовать свойство 'Roles' класса 'GenericPrincipal'

поэтому я изменил свой код следующим образом, чтобы он содержал «Роли»:

HttpContext.User = new System.Security.Principal.
                    GenericPrincipal(new System.Security.Principal.GenericIdentity(login.LoginName),
                     userRole);

В моем представлении site.master я проверяю, какие роли выполняют пользователи принадлежит и я показываю соответствующее меню, но когда я смотрю Значения 'HttpContext.Current.User.Identity' во время отладки, Я вижу, что m_roles = string [0] и IsInRole ("Admin") 'возвращает false.

Как это можно исправить?

1 Ответ

0 голосов
/ 04 января 2012

Попробуйте установить текущий принцип резьбы:

   System.Threading.Thread.CurrentPrincipal = principal;

как показано здесь: http://social.msdn.microsoft.com/forums/en-US/Vsexpressvcs/thread/5f9735a9-096b-47af-963d-e95130cad6b4

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...