Что такое Thread.CurrentPrincipal и что он делает?

Что такое Thread.CurrentPrincipal используется для? Как это помогает в Аутентификации и Авторизации приложения? Есть ли какие-либо статьи или ресурсы, которые помогут объяснить, что он делает?

1 ответ

Thread.CurrentPrincipal Это способ, которым приложения.NET представляют идентификационные данные пользователя или учетной записи службы, выполняющей процесс.

Он может содержать одно или несколько удостоверений и позволяет приложению проверять, является ли принципал в роли через IsInRole метод.

Большинство библиотек аутентификации в.NET проверяют учетные данные пользователя и устанавливают для этого статического свойства в классе Thread новый основной объект.

Разные потоки могут иметь разные принципалы, так как они могут обрабатывать запросы от разных пользователей (в веб-приложениях ASP.NET HttpContext.User копируется в Thread.CurrentPrincipal за каждый новый запрос)

Начиная с.NET 4.5 все основные классы являются производными от ClaimsPrincipal, включающий проверку подлинности на основе утверждений.

ОБНОВЛЕНИЕ: Вот как выглядит WindowsPrincipal на моем устройстве dev: введите описание изображения здесь

Другие вопросы по тегам