关于数据库登录的问题,相信应该有一些代表性,高手进来看看

czwwh 2005-05-31 03:47:35
C#,C/S架构,后台数据库SQL SERVER 2000。

在客户端登录时,首先要连接到服务器上的数据库。正常情况下,登录数据库的用户名是sa,密码为空,谁都知道这样不安全,客户要求能经常更改用户名和密码,并且只需在服务器上更改,而不是每个客户端都去改。

那么,用户名和密码的信息应该放在服务器了。我不知道应该放在哪里才能让客户端能正确的访问?如何访问?运行什么技术访问?

望高手不吝指教,非常感谢!
...全文
213 13 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
zeusvenus 2005-06-17
  • 打赏
  • 举报
回复
如果用其他方法,要注意两端的加密解密,虽然SHA系列算法已经被破了,使用起来还是相对安全的。
多看看威胁建模相关的东西,去微软网站上下个threat modeling工具,可能对你有用。
zeusvenus 2005-06-17
  • 打赏
  • 举报
回复
这是个应用webservice的典型案例。
dahuzizyd 2005-06-16
  • 打赏
  • 举报
回复
实际上就是数据库连接字符串的保护问题,看:
http://www.cnblogs.com/dahuzizyd/archive/2004/11/18/65385.html
注意里面提到的msdn上的文章,里面对几种方法的优劣有阐述
wuyan0189 2005-06-16
  • 打赏
  • 举报
回复
1 做个异常处理如果和sql服务器连接不上 就读取网络流 把sql的连接字符串 写在xml里然后调用 然后用网络流读写
2 Remoting 客户端要想接受到服务器 更改的信息就的在windows服务中 开启服务永久的监听 服务器的 动向 调用服务器的方法数据访问量小还可以
服务器端
TcpChannel channel = new TcpChannel(9000);
ChannelServices.RegisterChannel(channel);

MServer objectWellKnown = new MServer(this.dataGrid1 );

RemotingConfiguration.ApplicationName = "Mi";
ObjRef objrefWellKnown = RemotingServices.Marshal(objectWellKnown, "Remoting");


RemotingConfiguration.RegisterWellKnownServiceType( typeof(MServer),
"Remoting", WellKnownObjectMode.Singleton);
发送端
ServerFunction.MServer o = ( ServerFunction.MServer)System.Runtime.Remoting.RemotingServices.Connect (typeof(ServerFunction.MServer),
"Tcp://192.168.3.60:9000/Military/Remoting") ;

不知道 对楼主有没有用
czwwh 2005-06-16
  • 打赏
  • 举报
回复
正在学习Remoting,大伙给点建议,谢谢!

过几天就结贴
czwwh 2005-05-31
  • 打赏
  • 举报
回复
我也看好Windows Service,因为这毕竟是C/S结构,请问具体怎么做?或者推荐一些文档看看,谢谢!
cctaiyang 2005-05-31
  • 打赏
  • 举报
回复
不能用程序驱动的方法,建议使用数据驱动的方式来处理
zhongwanli 2005-05-31
  • 打赏
  • 举报
回复
Remoting OK
lovefootball 2005-05-31
  • 打赏
  • 举报
回复
1、用web service,在web service里面操作数据库,不过速度比较慢
2、把密码和用户名数据库等信息放在app.config里,可以经过加密,不过得找可以解密的那种算法,网上多的是
Grace_ghb 2005-05-31
  • 打赏
  • 举报
回复
c/s 的还是用Windows Service好点
czwwh 2005-05-31
  • 打赏
  • 举报
回复
to tingpig(汀):
非常感谢,有没有更详细的介绍文档?

to pupo(泡泡) :
这并不是好方法,因为密码和用户不可能在程序中写死,客户不可能从买你的软件到这个软件做废的n年中,数据库都不改用户和密码。
pupo 2005-05-31
  • 打赏
  • 举报
回复
在sql server中建一个用户,密码不允许改变,然后在客户端用这个帐号访问一个保存sa密码的表,当然密码最好是经过加密的
tingpig 2005-05-31
  • 打赏
  • 举报
回复
用smart client
把客户端做成瘦客户端,只有UI
通过webservice访问底层,把数据库访问等操作封装在服务器端的程序上就可以了

111,094

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧