先问各位五一劳动节愉快!有一个企业管理系统,有成千上万个公司职员需要通过应用程序登录到数据库进行操作(C/S模式),难不成我需要在SQL Server的企业管理器里要建几万个登录名称,我感觉这是很难想象的,像QQ Hotmail这样的系统,它的用户可能会上千万,难不成需要建上千万个登录名?我以前的做法是在数据库中建立一个用户表(这个用户不是“企业管理器”左侧“存储过程”下面的“用户”,是我自己建立的表),表中的列有用户名、密码、权限等其他信息,然后建十几个登录,其中一个登录是公用的,另外的十几个登录是我根据角色的概念自己创建的,跟用户名没有关系,相当于用户表中好多个用户对应一个登录。公用登录的权限只能访问“用户表”,操作员输入自己在“用户表”中的ID和密码通过公用登录登录到数据库中,比较输入的用户ID和密码是否与“用户表”中的用户ID和密码相符,如果相符,则根据用户的权限使用其他的登录名再登录一次数据库,然后开始正常操作。呵呵,确实有点绕,没办法,谁让自己水平洼呢。我的这种做法对不对?大家通常是怎么实现应用程序访问数据库服务器的?主要是登录和用户这一块。还有一个问题是,登录名是不是必须与用户名是一一对应的(不考虑多个数据库的情况)?望各位兄台不吝赐教。
在SQL SERVER中没有用户名这一说(除了WINDOEW身份验证)
不过,c/s方式,每个人都直接连数据库,不方便也不安全,而且贵(如果数据库是正版的话)
应该通过应用服务器来实现,也就是b/s或client/webserver
1.员工登陆和sql server登陆账户无关。
2.员工登陆系统应该只是检测你设的一人用户表而已。
3,这个用户表应该是由你的一个叫‘人事档案表’之类的表根据员工工号自动生成的。
3,每个用户应该有一个初始密码,或者初始密码为空。
4,每个员工第一次登陆时,强制要求修改密码。
5,如果怕a员工抢在b员工之前登陆系统,并修改掉密码,第一次登陆可以设置一个可几个员工个人信息的问题,如问他的的身份证号是多少等。
6,这个问题的关键就是有人事档案表就好办
应用程序的用户与数据库用户是不一样的。
如果像你那样,像taobao这样的网站不得累死