ADFS получает все роли для пользователя, вошедшего в систему - PullRequest
0 голосов
/ 29 ноября 2011

Я использую этот пример приложения, предоставленный в http://technet.microsoft.com/en-us/library/cc753987%28WS.10%29.aspx, чтобы поиграть с приложением ADFS, поддерживающим заявки.Мой вопрос: как я могу получить все роли, в которых пользователь использует ADFS, в приведенном выше коде есть только пример проверки ролей с помощью User.IsInRole (role).

Ответы [ 3 ]

0 голосов
/ 29 ноября 2011
IClaimsPrincipal principal = (IClaimsPrincipal)this.Context.User;
IClaimsIdentity identity = principal.Identites[0];

var roles = identity.Claims
                .Where( c => c.ClaimType == ClaimTypes.Role )
                .Select( c => c.Value );
0 голосов
/ 29 ноября 2011

См. Как: получить доступ к утверждениям на странице ASP.NET

Редактировать : Ответить на комментарий для WIF:

Для поддерживаемыхОперационные системы: Windows 7, Windows Server 2008 R2, Windows Server 2008 с пакетом обновления 2, Windows Vista с пакетом обновления 2

  • Microsoft® Internet Information Services (IIS) 7.0
  • Microsoft®.NET Framework 3.5

Для поддерживаемых операционных систем: Windows Server 2003 с пакетом обновления 2

  • Microsoft® Internet Information Services (IIS) 6.0
  • Microsoft®.NET Framework 3.5
0 голосов
/ 29 ноября 2011

Полный список вы можете посмотреть здесь и я бы также указал вам на этот ответ .

...