我如何处理多个登录从一个单一的会话web应用程序



在与客户的最初讨论中,我们认为让用户以不同的身份为不同的角色登录会更简单,例如培训模块作者与培训消费者。然而,这似乎在某些方面出现了使用session的问题,即同一用户同时打开作者和练习生页面,但网站只存储一个cookie。

我如何解决这里的主要问题,这是web应用程序识别我作为一个登录(记住)用户,当我想作为另一个登录?或者我只是简单地告诉用户,在尝试使用另一个"角色"之前,他们必须先注销一个"角色"?

看到,例如,上面引用的两个角色在大多数时候都有广泛不同的观点呈现给用户,我们感到不断分析分配给用户的角色集的复杂性迅速增加,在角色模型中,一直不是我们想要的场景,我们使用不同的用户模型。我在这里还可以探讨其他的模型吗?

告诉我,如果我做得对,但大多数情况下,这是通过登录一个身份,有不同的角色分配给它。这样,您就不需要为单个用户提供多个身份,并且您将根据该身份的角色来呈现html。(例如:身份角色集合中的最高特权角色)

如果你的客户端想要坚持使用多个身份,那么我建议使用会话包装器这样您就可以创建自己的会话结构并存储登录的角色。

检查角色所需的代码量是最少的:

如果(User.IsInRole("作者"){//渲染作者的东西}其他的{//渲染其他东西}

您还可以编写一个可以从任何页面调用的静态方法,您还可以创建一个代表两组权限的角色。因此,你需要允许多个身份来完成你已经可以用角色做的事情的想法在这里没有多大意义。

最新更新