通过Internet连接MySQL和.net应用程序有危险吗?

Hor*_*ter 3 .net c# mysql mysql-connector

对于一个小项目,我需要在MySQL中存储一些数据.用户位于全球范围内并运行.net ClickOnce应用程序.访问的数据并非真正保密,即使有人可以访问,这也不会从隐私角度受到伤害.

从技术上讲,可以将MySQL数据库放在某个服务器上,并通过Internet 连接 所有人通过Connector/Net 连接.但这是否可取?

  1. 协议是否足够稳定/健壮以处理缓慢的互联网连接?
  2. 这会是一个严重的安全风险.加密数据不是主题,而是密码加密.打开MySql数据库(端口)到Internet会有危险吗?

或者,我可以通过Web服务"包装"数据库访问,或者其他方式.但当然这是我想避免的一些开销.那么通过Internet连接MySQL是一个有效的选择吗?

备注:

Bil*_*win 5

我建议为您的远程.NET应用程序实现REST Web服务层.然后,您可以让处理Web服务请求的服务器具有对数据库的本地访问权限,您不必担心MySQL协议是否符合工作要求.

我的经验是MySQL协议可能在WAN上运行,但它确实打算在本地网络上使用,因此WAN的延迟会使事务变得无法忍受.

此外,MySQL服务器必须公开其端口(默认为3306)并且这并没有真正强化,所以除非你通过VPN或stunnel连接或者它不安全.

MySQL客户端/服务器协议不以明文形式传输密码,在发送之前在客户端上散列密码.但我知道MySQL Connector/NET不使用MySQL客户端,所以我不确定它是否在客户端使用密码哈希做同样的事情.