2011-12-25 67 views
0

在与我的客户进行初步讨论时,我们认为让用户以不同身份登录不同角色会比较简单,例如,培训模块作者与培训消费者。但是,这看起来在某些方面使用会话会出现问题,即同一用户同时打开了作者和受训者页面,但该网站只存储一个cookie。如何从单个会话处理Web应用程序的多个登录?

我怎么可以在这里解决的主要问题,这是Web应用程序识别我作为一个在(记得)签署的用户,当我想注册的另一个?或者我只是向用户说清楚,在尝试使用另一个人之前,他们必须始终签署一个“人物角色”?

看作为,例如上面提到的两个角色在大多数时间向用户提供了广泛不同的观点,我们感觉到在角色模型中持续分析分配给用户的角色集合的快速增长的复杂性始终不是我们的情景我们喜欢用不同的用户模型。我还可以在这里探索哪些其他模型?

回答

0

告诉我,如果我这样做是正确的,但大部分是由洛在与分配有不同的角色一个标识东德的时间。 这样你就不会需要一个用户的多个身份,你会根据这个身份的角色来呈现html。 (例如:在身份角色集最高特权的角色)

如果客户希望要坚持多重身份那么我建议你使用可以创建自己的会话结构和存储已登录一个Session Wrapper 。这种方式在角色中。

+0

感谢,也许我可以做一个会话包装的东西,是的。我的观点不是为最高特权角色呈现HTML,而是为用户选择采取行动的角色提供允许。即管理员只能看到管理员,而不是管理员和pleb,但必须能够选择只看到pleb,如果他们想要,而不是管理员和pleb。 – ProfK 2011-12-25 16:44:54

0

的必要检查角色的代码量是最小的:

如果(User.IsInRole( “作家”) {// 渲染笔者东西 } 其他 {// 使其他的东西 }

你也可以编写一个可以从任何页面调用的静态方法,并且你也可以创建一个代表两组权限的角色,所以你需要允许多个身份来完成你已经可以完成的任务与角色做并没有很大的意义这里。

相关问题