递归火山软件开发平台

标题: 问下,开发的软件与数据库直连,有哪些风险或缺陷? [打印本页]

作者: 朕的    时间: 2021-5-28 07:01
标题: 问下,开发的软件与数据库直连,有哪些风险或缺陷?
     如果利用火山的mysql客户端类库,开发一个小软件,对外公开使用的风险疑问???


1、排除逆向程序获取mysql账号信息外,有没有其他的风险?
2、比如:dll注入或伪造dll执行SQL,或者直接对赋值提交参数SQL注入的可能?

3、mysql连接登陆好像抓包可以抓到IP端口和账号,密码是加密后的应该不好破解吧?
4、在数据交换时是未加密的,抓包应该可以直接抓到。如果用类库带的启用SSL能否起到安全的作用?






看到网上有什么中间件,感觉用起来有点麻烦,有的是借助php交换数据,有的好像要专门用windows系统做服务部署TCP协议的程序服务端,性能效率上也会打折扣和操控上也会复杂。具体对此没有研究,有没有擅长接触这类问题的朋友,帮忙解答一下。谢谢!


作者: 朕的    时间: 2021-5-28 18:37
有人吗 请教请教
作者: srchentao    时间: 2021-5-28 18:55
我的感受是没有绝对的安全,尽量做你现在能做的安全措施,
作者: srchentao    时间: 2021-5-28 19:01
现在都是移动办公了,对自己狠一点,直接去学一下php,我自己就是写过进销存,经历过易语言使用本地数据库,c#链接阿里云的数据库,到了去年直接php,一劳永逸,电脑和手机都能用
作者: Fang0x378    时间: 2021-5-28 19:50
srchentao 发表于 2021-5-28 19:01
现在都是移动办公了,对自己狠一点,直接去学一下php,我自己就是写过进销存,经历过易语言使用本地数据库 ...

学php还得学前端,学美工。
前端美工是最烦的。
作者: Fang0x378    时间: 2021-5-28 20:55
你在客户Duan里直连mysql,客户Duan里肯定存有mysql地址,端口,用户名,密码,
这些数据被人获取之后,数据库不就是裸奔了?
作者: 朕的    时间: 2021-5-28 23:38
Fang0x378 发表于 2021-5-28 20:55
你在客户Duan里直连mysql,客户Duan里肯定存有mysql地址,端口,用户名,密码,
这些数据被人获取之后,数 ...

不存,我通过别的方法动态引用。
作者: guo828587    时间: 2021-5-29 12:26
朕的 发表于 2021-5-28 23:38
不存,我通过别的方法动态引用。

都没用,用PHP做中间件吧!把要执行的命令发给PHP就行,PHP执行SQL语句
作者: Fang0x378    时间: 2021-5-29 13:30
本帖最后由 Fang0x378 于 2021-5-29 21:07 编辑

我最近也在研究这个,准备用火山写个服务端,放在云服务器里。
这是我的想法,不找到效率如何。



作者: 67564226    时间: 2021-5-29 15:05
本帖最后由 67564226 于 2021-5-29 15:11 编辑

数据库本身通讯是加密的,  

除了可以从软件反编译到你的客户Duan中的帐号密码外,

其它的还是安全的.
中间件的目的,就是绕过了反编译出你的数据库帐号密码的可能.

为什么非要写一个PHP中间件吗? 这个要学好东西。
用程序写一个中间件服务不好吗? 客户Duan直接连接这个中间服务器就行了,
如果嫌易的效率低,用火山写不就可以了。 选择多了去了。

作者: Goto唯一    时间: 2021-5-30 18:36
我的APP也是这样的  直连MySQL  还没发布  不知道如何
作者: 朕的    时间: 2021-5-30 18:52
Goto唯一 发表于 2021-5-30 18:36
我的APP也是这样的  直连MySQL  还没发布  不知道如何

可以 截图欣赏参观一下吗
作者: Goto唯一    时间: 2021-6-6 22:57
朕的 发表于 2021-5-30 18:52
可以 截图欣赏参观一下吗

没啥可欣赏的  菜鸟第一部火山作品
作者: lingling    时间: 2021-6-7 00:16
所有的APP或者PC软件开发,都不能MYSQL数据库直连,必须使用API接口作为中间件!

1、直连MYSQL数据库,软件里存放数据库帐号密码,会被破解;

2、TCP连接软件,可以实现长连接,但是消耗内存较大,必须时时刻刻保持连接,客户量大的时候很耗服务器资源;

3、API接口作为中间件,所有逻辑处理在服务器,前端只是一个功能调用或者显示,如果需要维护和更新,直接改API接口代码,无需更新软件来达到在线更新的目的。

4、API接口不会保持长时间连接,一次交互数据完成后,自动断开,相比较于TCP连接,API可以同时支持高于TCP连接N倍的客户。

作者: 朕的    时间: 2021-6-7 09:56
lingling 发表于 2021-6-7 00:16
所有的APP或者PC软件开发,都不能MYSQL数据库直连,必须使用API接口作为中间件!

1、直连MYSQL数据库,软 ...

感谢解答,我的数据库帐号密码经过处理过的,没有放在程序里。通过php动态加密返回账号连接数据解密,不知道抓包破J的难度大不大。你说的API一般多事采用服务器部署php做的中间件吧?
作者: lingling    时间: 2021-6-10 23:56
朕的 发表于 2021-6-7 09:56
感谢解答,我的数据库帐号密码经过处理过的,没有放在程序里。通过php动态加密返回账号连接数据解密,不 ...

对的,采用php作为后端
作者: 伟业    时间: 2021-6-11 10:09
路过路过
作者: sun19990909    时间: 2021-10-3 11:02
看我的帖子 有php加密通信中间件  易语言 火山安卓 火山视窗 通用的
作者: sun19990909    时间: 2021-10-3 11:08
Goto唯一 发表于 2021-5-30 18:36
我的APP也是这样的  直连MySQL  还没发布  不知道如何

看我的帖子 有php加密通信中间件  易语言 火山安卓 火山视窗 通用的
作者: CPUCN    时间: 2021-10-3 18:02
用火山从零开发一款数据库中间件课程http://bbs.voldp.com/forum.php?m ... &extra=page%3D1   
附30课免费课程


我的课程正好解决你的问题.




欢迎光临 递归火山软件开发平台 (https://bbs.voldp.com/) Powered by Discuz! X3.4