我刚开始在现有的Web应用程序上使用基于声明的安全性。我有很多与身份相关的项目,如电子邮件和名字,但还有其他安全相关的项目,我不确定是否应该放在这里。
例如,有许多细粒度的布尔权限用于不同区域的站点,我不确定应该放在哪里。例如 - CanAccessX,CanAccessY,CanAccessZ等。
有人能告诉我这些项目是否适合转换为声明,还是应该放在其他地方?
其次,由于所有声明都被序列化到cookie中,如果将其装满太多声明,这是否是一个坏主意?在哪个阶段会检索额外的声明并仅在cookie中放置一小部分声明?
谢谢。
new Claim("http://schemas.example.com/identity/claims/permission", "CanAccessX")
,但是可能会出现cookie过多的问题。如果我没记错的话,你可以使用SessionAuthenticationModule
来处理cookie;甚至还有一种现代的“OWIN cookie authentication middleware”方法。 - Axel Heer