2012-04-22 40 views
-1

我正在编写需要登录的ac#windows应用程序,我打算简单地使用我的web服务器上的sql select进行检查,但是我的webhost似乎只允许远程sql访问,如果您手动输入您的IP地址,我无法为应用程序的每个用户执行此操作。c#windows应用程序登录没有SQL

所以我的问题是,什么是最好的解决方案呢?我已经考虑过在我的网站上尝试一个httprequest页面,然后它可以检查通过PHP传递给它的登录信息并返回结果,但它必须是安全的,这看起来有点难以实现(即时通讯相当新的C#)。

+0

你是什么意思“手动输入你的IP地址”?服务器?或者用户? – lordcheeto 2012-04-22 12:34:07

+0

**编辑:**愚蠢的问题,当然你的意思是用户。仅出于安全原因,您绝不会希望具有该应用程序的任何用户能够访问您的sql服务器以获取登录凭据。 – lordcheeto 2012-04-22 12:39:30

回答

1

正如我上面的评论所说,出于安全原因,你永远不希望任何具有该应用程序的用户访问你的sql服务器。我的建议是让客户端通过SSL(https://)连接到ASP.NET页面或Web服务,以检查使用LINQ to SQL提供的凭据。然后它可以向客户端发送通过/失败响应。

哦,为了上帝的爱和所有的圣洁,salt and hash your users' passwords

注:如果你想使用这个登录防止用户使用你的应用程序,而无需账号/支付,以上所有的看台上,但不足以从逆向工程阻止人们和开裂该应用程序(例如,欺骗它认为它已收到通过消息)。这种数字版权管理是一个完整的“无球游戏”。