通过互联网连接MySQL和.net应用程序是一种危险吗

本文关键字:一种 危险 应用程序 互联网 连接 MySQL net | 更新日期: 2023-09-27 18:00:28

对于一个小项目,我需要在MySQL中存储一些数据。用户分布在世界各地,运行.net ClickOnce应用程序。所访问的数据并不是真正的机密,即使有人能够访问,从隐私角度来看也不会造成损害。

从技术上讲,MySQL数据库可以位于某个服务器上,并通过互联网上的Connector/Net将每个人连接起来。但这样做明智吗

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

或者,我可以通过web服务或其他方式"包装"DB访问。当然,这是我想避免的一些开销。那么,通过互联网连接MySQL是一个有效的选择吗?

备注:

  • MySQL通过互联网与VB.NET的连接没有重复
  • 因此,通过互联网连接到数据库并不那么具体,截至目前还没有答案

通过互联网连接MySQL和.net应用程序是一种危险吗

我建议为您的远程.NET应用程序实现一个REST web服务层。然后,您可以让处理web服务请求的服务器本地访问数据库,这样您就不用担心MySQL协议是否符合要求。

根据我的经验,MySQL协议可能在WAN上运行,但它实际上是用于本地网络的,因此WAN的延迟会使事务速度慢得令人无法忍受。

此外,MySQL服务器必须公开其端口(默认为3306),这并没有真正加强,所以除非你通过VPN或stunnel或其他方式连接,否则它是不安全的。

MySQL客户端/服务器协议不以明文形式传输密码,而是在发送之前对客户端上的密码进行哈希处理。但我知道MySQL连接器/NET不使用MySQL客户端,所以我不确定它是否在客户端上对密码哈希做同样的事情。

1)该协议稳定,使用时间长。

2) 你不应该在本地网络之外共享数据库,这是一个很高的安全风险。您应该在数据库服务器上创建一些层,通过这些层可以访问数据库中的数据。您还可以使WCF服务器介于client-sidedb之间。