[英]Control different access levels
我计划使用两个表(即来宾和员工)来控制哪个页面可供哪个用户使用。
猜测可以注册一个帐户,而员工不能。 员工的帐户只能由系统管理员分配。
这是我刚刚发现的问题:
假设UserA是一名雇员,并且以“ login001”作为用户名,以“ password”作为密码。
现在,一个猜测出现在网站上,并以“ login001”和“ password”作为密码来申请用户名。
然后,用户B可以访问某些内部网站b / c,他/她选择了与一名员工相同的用户名/密码。
这是我解决此问题的方法:
方法一:无论何时使用用户名(无论是猜测还是雇员),都应同时检查表猜测和雇员,以确保没有重复。
方法二:将猜测表和员工表合并为人员表。 但是,出于猜测,可以将user_type分配为GUEST,对于雇员,可以将user_type分配为EMPLOYEE。
我不知道上述方法是否有意义。 如果它们都不是好的解决方案,请给我一些指导,以便我采用一些最佳实践。
我没有使用任何框架或OOP来实现我的PHP脚本。
谢谢
我建议您将两个凭据表合并为1。然后,您可以创建对guest
表和employee
表的引用。 这样,您可以存储有关两者的其他信息。
但是,您可能想问自己,客人和员工之间有什么区别。 如果唯一的区别是访问控制,则可以通过凭据表中的附加列来摆脱,该列定义记录是访客记录还是员工记录。
最后,将凭据组合到1个表中后,应在用户名列上设置唯一约束。 这样可以确保只有1个帐户可以具有login001
或joeshmoe
类的用户名。
您可能应该将所有登录名放在一个表中,因为它们将共享许多相同的列。 那些重复的列不是雾化数据的理想方法。
使用方法二,它将在以后最大程度地减少您的头痛,并且数据更容易理解。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.