В WIF (Windows Identity Foundation) 4.5 Microsoft создала WindowsPrincipal
, который является типом ClaimsPrincipal
< / а>. Конечно, эти классы не переносимы, но интерфейсы, стоящие за ними, являются (IPrincipal
). То же самое можно сказать и о классе ClaimsIndentity
реализация интерфейса IIdentity
.
Проблема, с которой я столкнулся, заключается в том, что эти классы и WIF в целом полностью основаны на концепции «требований», что замечательно ... но два интерфейса, IPrincipal
и IIdentity
- нет. Более того, класс ClaimsPrincipal
также имеет набор идентификаторов, а не только один связанный с ним идентификатор.
- IPrincipal имеет
Identity
иIsInRole
участников. - IIdentity состоит из
AuthenticationType
,IsAuthenticated
иName
участников.
Учитывая тот факт, что переносимые библиотеки классов могут получить доступ только к этим двум интерфейсам, как можно получить фактические утверждения?
Кроме того, в том редком случае, когда у принципала есть несколько идентификаторов, как можно получить «непервичные» идентификаторы?