Am使用层次结构顺序的以下类型的帐户来构建系统 -院长 -PG电源线。 - 部门主管 -员工
现在每个人都有不同的角色。 问题。 同一个人有可能担任系主任和研究生监考官。我的问题是,如果他们登录,我该如何确定是否以研究生事务员或系主任的身份登录。 他们的查询有些不同。
对于PG监禁员,他只会看到所在系的研究生,对于部门负责人,他只会看到所在系的所有学生。
我尝试过的事情 我试图赋予用户最高的角色,例如,如果您是部门主管(PG)和PG协调者,因为PG协调员高于H.O.D,那么我以PG Cord身份登录。
但是,它们的查询参数不同。例如,作为您所在部门的H.O.D获取学生,我的查询字符串需要一个部门作为参数。而PG线。不需要部门
答案 0 :(得分:0)
某些网站通过在登录屏幕上要求一个角色来解决此问题。
username: [ ]
pasword: [ ]
Role: [Staff Members V] <-- Dropdown, with the most common option pre-selected.
[Log in]
答案 1 :(得分:0)
解决方案#1:一个角色表,其中的每个权限都由一个微小整数列(1、0)表示。它们将像“ can_add_students”,“ can_view_students”之类。
解决方案2:创建一个角色表和一个权限表。权限表将具有一个权限,一个值和一个父角色。这样一来,它的用途更加广泛,看起来也不会那么混乱。
解决方案3:可能最好的也是最难的是实现OAuth 2.0,因为它正是您所描述的。它也是安全的,是行业标准。不利的一面是,如果您仍在问这个问题,学习曲线可能会有些陡峭。