在c#中安全连接到mySQL数据库

我对C#很陌生,我一直在做很多事情,但我缺少很多基础知识。 无论如何,我正在创建一个用户必须登录的程序,然后检查输入的密码是否与数据库中的密码相同。

无论如何,我知道有办法进入编译程序的代码,我想知道是否有任何我应该做的事情,以确保没有人能够以某种方式看到MySQL数据的登录信息。

谢谢

根据您的规格和要求,有许多不同的方法可以保护连接信息 。

一个简单的规则,从不在编译代码中包含数据库连接字符串

一些链接
保护连接信息
SO – 加密非ASP.Net应用程序中的连接字符串
MSDN保护连接字符串

继评论中提出的问题。
作为ANY连接字符串配置的辅助,您还应该通过使用角色基本访问控制来限制应用程序对数据库的访问,以减少授予应用程序的权限以及它可以执行的过程或Sql命令。

防止人们看到您的MySQL连接字符串凭据的唯一方法是使用三层体系结构,其中您在服务器上运行的Web服务器或服务保存连接字符串并向数据库发出请求。 您的客户端应用程序将与Web服务器/服务进行通信。

我同意劳埃德的观点。

除了安全方面之外,保持连接字符串不受编译代码的影响意味着如果由于某种原因需要更改它,则不必重新编译和重新部署代码。 通常,在您的站点突然停止工作之前,您不知道有人搞砸了服务器名称或数据库名称或凭据。 在半夜。

我认为这将是我的程序的一个问题,所以我正在制作一个PHP文件来处理POST数据并返回一个响应,我的服务器端的PHP文件保存数据库连接以及只返回有限数据到我的C#程序。 然后C#程序读取响应并得到适当的数据。 这将使得它自己的程序执行HTTP POST并且不知道数据库用户和密码。 同时让我控制可以将哪些数据发送到C#程序。