我在 MVC 应用程序和自定义逻辑中使用 WIF 和基于声明的安全性,在验证后使用适当的声明创建 ClaimsPrincipal。我将一些标准声明(例如角色和名称)分配给委托人,但也会在适用的情况下分配自定义声明。
例如,我使用 URI 在标准化角色和名称声明之后建模了我的自定义声明
新声明(“http://schemas.acme.com/2012/04/identity/claims/create”、“http://schemas.acme.com/2012/04/identity/resources/customer”)
一切都运作良好。我使用 SessionAuthenticationModule 将用户会话存储在 cookie 中,并在每次请求时对其进行补充。
我今天注意到,在有人使用相同的用户类型登录后,我的自定义声明没有从 cookie 中反序列化。标准声明(名称/角色)存在,但自定义声明不存在。
有没有其他人见过这个或知道为什么会这样?