В этом сценарии с помощью шаблонов WIF для Visual Studio и программы FedUtil создается веб-сайт ASP.NET для доступа к утверждениям текущего пользователя через объект IClaimsPrincipal. Для этого необходимо добавить в проект модуль ClaimsPrincipalHttpModule с помощью программы FedUtil. Этот модуль позволяет преобразовать объект IPrincipal текущего пользователя в объект IClaimsPrincipal.

Примечание.
Для корректной работы FedUtil необходимо запустить Visual Studio в режиме с повышенными правами.

Создайте в Visual Studio веб-сайт ASP.NET, поддерживающий утверждения, как показано в разделе Веб-сайт ASP.NET, поддерживающий утверждения.

Затем щелкните правой кнопкой мыши проект в обозревателе решений и выберите команду "Добавить ссылку на службу STS".

Откроется программа FedUtil. Откроется диалоговое окно FedUtil со страницей приветствия служебной программы федерации.

На этой странице необходимо заполнить два поля:

  1. Расположение конфигурации приложения: укажите путь к файлу web.config веб-сайта ASP.NET. При запуске программы FedUtil не из Visual Studio это поле пусто. При запуске программы FedUtil запущена из Visual Studio данное поле уже будет содержать путь к файлу web.config текущего проекта. Файл web.config должен к этому моменту существовать и находиться в состоянии по умолчанию (в том, в каком он был создан средствами Visual Studio). Если программа FedUtil запускается несколько раз для одного и того же файла web.config, она будет просто перезаписывать содержимое, добавляемое в web.config.

  2. URI приложения: укажите универсальный код ресурса (URI) веб-сайта ASP.NET. При запуске программы FedUtil не из Visual Studio это поле пусто. При запуске программы FedUtil из Visual Studio данное поле будет содержать два кода URI для этого проекта: один с именем localhost, другой с полным доменным именем данного компьютера (если оно определено). Если код URI не является безопасным (т. е. не начинается с https://), при нажатии кнопки "Далее" появится соответствующее предупреждение.

После ввода необходимых сведений нажмите кнопку "Далее". Откроется страница "Служба STS".

Выберите параметр "Без службы STS" и нажмите кнопку "Далее". Откроется страница "Сводка".

Нажмите кнопку "Готово".

Откройте файл default.aspx.cs и обратите внимание на первые две строки в методе Page_Load:

  Копировать код
IClaimsPrincipal claimsPrincipal = Page.User as IClaimsPrincipal; IClaimsIdentity claimsIdentity = ( IClaimsIdentity )claimsPrincipal.Identity;

Остальной код представляет собой список утверждений для текущего пользователя и их значений.