首先我的工作说一下!
我是一个DBA,程序和数据库的论证方式是WINDOWS论证,密码为空。这样做的最大问题就是任何一个人在终端装一个数据库都可以访问服务器,数据库非常不安全。我认为用WINDOWS论证方式的话,你能够访问到程序,就能够访问到数据库。要让用户不能够访问数据库,只能够用SQLSERVER自带的论证方式,密码在程序里控制,动态配制,我想问一下如何能够做到这一点,最好给一段代码给我,小弟不胜感激。
另外,我想问一下,你们是怎么处理类似问题。
我是一个DBA,程序和数据库的论证方式是WINDOWS论证,密码为空。这样做的最大问题就是任何一个人在终端装一个数据库都可以访问服务器,数据库非常不安全。我认为用WINDOWS论证方式的话,你能够访问到程序,就能够访问到数据库。要让用户不能够访问数据库,只能够用SQLSERVER自带的论证方式,密码在程序里控制,动态配制,我想问一下如何能够做到这一点,最好给一段代码给我,小弟不胜感激。
另外,我想问一下,你们是怎么处理类似问题。
如果按照你的说法,全系统200多个模块中的DATABASE中的论证方式都要重新改变,这样的话很麻烦。另外,即使你一旦给SA加上了密码的话,一旦要修改密码,还是一样要改程序。有没有更好的方法呢??
!!!!!!!!!!!!!!!111
另外怎么做一个连接管理器呢?
在一次感谢Commander007的回复
把你的程序加一个form,做成用户登录数据库的form,里面放两个edit,一个做为用户名,另一个做为密码框,然后将这两个的值取出来,传递给你的数据库连接字符串就行了。
我感觉程序不是稍作修改,而是所有的模块都要修改!!!!
另外,加一个form里面放两个edit,是不是在说有模块里都要加!!!既然用户知道了密码,那么还不是一样可以在客户段装SQLSERVER2000,用同样的用户名和密码进去???
你在实际开发过程中是怎样解决这个问题的呢?
谢谢!!!!!1
==============================================================================
我觉得(只能够用SQLSERVER自带的论证方式,密码在程序里控制,动态配制)好象不能实现,程序访问数据库时是按你配置的驱动的登陆名来访问的,要想程序动态的配置,那程序也必须以sa的身份登陆,要不然就谈不上动态了,小弟浅见,各位觉得呢?