在一个有3层的登录系统中,有什么更好的方法在数据库和登录系统中创建表?
这三个级别是:“客户端”、“附加”和“管理员”。
“客户端”将访问您的所有帐户详细信息,您可以注册“附加”。“附加的”将只能访问一些详细信息。“管理员”可以注册新的“客户端”。
1)只有一个登录url,然后让系统检查用户的级别,然后定向到正确的页面,这样安全吗?
站点。如果其他OR客户端将定向到->站点,则登录com/login。com/client (如果管理员将定向到站点)。com/admin
2)或者最好的方法是为客户端和其他站点提供一个日志文件。com/client/login和其他方式登录到管理员站点。com/admin/login
3)我想我应该创建一个只包含所有用户的ID、Login、Password和LEVEL的表: Clients、Additional和Administrators,并查询该表以查看该用户是否存在,以及有哪些资源可用,然后根据级别在其他表中查找数据,这是安全的做法吗?
4)我还考虑使用INNER JOIN在3个表中进行扫描,以查看用户是否具有访问系统的权限。并让表中的ca级数据完全分开。这是一种有效的替代方案吗?
其他想法?替代方案?
发布于 2013-04-16 09:11:01
这是一个相当开放的问题。你肯定想要#1而不是#2,你不想维护2个登录方法。只有一个登录页,并决定用户应该去哪里后,他们登录。
当谈到#3或#4时,我认为你会走得更远。把你的桌子做成这样:
ID, login, password, client_permission_level, admin_permission_levelclient_permission_level 1= "additional“client_permission_level 2= "client”admin_permission_level 0=“非管理员”admin_permission_level 1=“管理员”
您可以创建一个更复杂的系统,但这听起来像是可以让您开始。而且,您还可以定义更多级别,如“超级管理员= 2”或“超级客户端= 3”。
发布于 2013-04-16 09:09:14
https://stackoverflow.com/questions/16027082
复制相似问题