MYSQL 的 C# 安全连接信息
C# secure connection info for MYSQL
我即将发布一个使用数据库连接存储数据的小工具。问题是:如何防止人们对我的代码进行逆向工程并让 Username
和 Password
获得对数据库的访问权限?
对于早期的项目(仅由我自己使用),我将 connection-string
定义为我的应用程序中的全局变量。但这是非常不安全的,因为从 exe 中取出这个字符串只需要几分钟。
还有很多混淆代码的方法是可以逆向的。
我非常喜欢提供代码,但我不知道该提供什么 post。这更多是关于理论的问题。编码是我自己处理的部分。
这是我的一个小想法,我不太喜欢:
我可以在服务器上放置第二个工具。真正的应用程序将连接到第二个工具,提供数据,第二个数据最终将连接到我的数据库本身。这样连接字符串将存储在第二个应用程序中,没有人可以获取它。
事实是,在客户端计算机上存储敏感信息极易受到针对您 database
的攻击。您可以考虑的一个建议是应用程序的三层架构模型 (http://en.wikipedia.org/wiki/Multitier_architecture#Three-tier_architecture)。在三层架构中,你有你的表现层(你的应用程序),你的逻辑层(这一层将是所有客户端都可以访问你的数据库的中央进站),你有你的数据库层(服务器你的数据库在哪里)。使用此架构,您可以确保存储和检索的所有数据都来自单一来源和高级别安全性。
在过去(现在仍然如此),程序员必须创建自己的套接字服务器或进行高级网络编程才能开发出这样的解决方案,但是 Microsoft 开发了一个名为 Windows Communication Foundation
的工具( WCF
) 它消除了编写自己的套接字服务器的痛苦,让您专注于开发自己的实现。不过请注意,WCF
默认情况下是安全的,但是没有理由不去研究使您的产品对黑客具有鲁棒性的方法(比如知道您将使用什么协议,您将使用什么安全措施) (传输与消息等),在客户端加密数据,这样潜在的病毒就不会发现敏感信息等)。话虽如此,WCF
是一项高度完善的服务,确实很容易上手 运行。
有关 WCF
的初学者视频教程可在此处找到:https://www.youtube.com/playlist?list=PLhq7kqloVlM-bI9W_7iDZhObAeyrFt1y_
编辑:视频的播放列表不见了,但视频本身还在。只需搜索他的所有视频,寻找关键字 'WCF'
这是 link:https://www.youtube.com/user/JesseDietrichson/featured
我即将发布一个使用数据库连接存储数据的小工具。问题是:如何防止人们对我的代码进行逆向工程并让 Username
和 Password
获得对数据库的访问权限?
对于早期的项目(仅由我自己使用),我将 connection-string
定义为我的应用程序中的全局变量。但这是非常不安全的,因为从 exe 中取出这个字符串只需要几分钟。
还有很多混淆代码的方法是可以逆向的。
我非常喜欢提供代码,但我不知道该提供什么 post。这更多是关于理论的问题。编码是我自己处理的部分。
这是我的一个小想法,我不太喜欢:
我可以在服务器上放置第二个工具。真正的应用程序将连接到第二个工具,提供数据,第二个数据最终将连接到我的数据库本身。这样连接字符串将存储在第二个应用程序中,没有人可以获取它。
事实是,在客户端计算机上存储敏感信息极易受到针对您 database
的攻击。您可以考虑的一个建议是应用程序的三层架构模型 (http://en.wikipedia.org/wiki/Multitier_architecture#Three-tier_architecture)。在三层架构中,你有你的表现层(你的应用程序),你的逻辑层(这一层将是所有客户端都可以访问你的数据库的中央进站),你有你的数据库层(服务器你的数据库在哪里)。使用此架构,您可以确保存储和检索的所有数据都来自单一来源和高级别安全性。
在过去(现在仍然如此),程序员必须创建自己的套接字服务器或进行高级网络编程才能开发出这样的解决方案,但是 Microsoft 开发了一个名为 Windows Communication Foundation
的工具( WCF
) 它消除了编写自己的套接字服务器的痛苦,让您专注于开发自己的实现。不过请注意,WCF
默认情况下是安全的,但是没有理由不去研究使您的产品对黑客具有鲁棒性的方法(比如知道您将使用什么协议,您将使用什么安全措施) (传输与消息等),在客户端加密数据,这样潜在的病毒就不会发现敏感信息等)。话虽如此,WCF
是一项高度完善的服务,确实很容易上手 运行。
有关 WCF
的初学者视频教程可在此处找到:https://www.youtube.com/playlist?list=PLhq7kqloVlM-bI9W_7iDZhObAeyrFt1y_
编辑:视频的播放列表不见了,但视频本身还在。只需搜索他的所有视频,寻找关键字 'WCF'
这是 link:https://www.youtube.com/user/JesseDietrichson/featured