我正在开发一个门户系统来共享信息和文档等。每个用户都可以有多个配置文件。每个配置文件因此可以具有不同的角色和权限。现在一切正常,但我对 MembershipProvider 和 MembershipUser 有疑问。
我将自定义 MembershipProvider 和 MembershipUser 与 OpenAccess ORM 结合使用。
我非常依赖(CustomMembershipUser)Membership.GetUser()
. 例如,我构建了一个用户菜单,他们可以在其中看到他们登录的用户以及他们可以从哪些配置文件中选择。
要构建此菜单并收集当前配置文件的组、角色和权限,代码中有很多Membership.GetUser()
来自不同位置的调用。我首先缓存了用户并根据 ProviderUserKey 返回了这个,但我被告知这是不安全的。所以我删除了缓存,但速度要快得多。是否有替代的最佳实践?