【问题标题】:Allowing users to remotely connect to mysql db允许用户远程连接mysql db
【发布时间】:2012-08-02 22:46:46
【问题描述】:

首先,我查看了她关于这个问题的每个相关主题。然而,他们都没有成功地完全回答我的问题。

目前我正在开发一个用 C# 编码的桌面应用程序,它需要 mysql 连接来进行身份验证和存储用户自定义列表等。

我将我的测试数据库放在我在 hostgator 上的帐户中,并使用如下所示的连接字符串连接到它;

public static string cs = "Server=xx.xx.xxx.xx;Port=3306;Database=xxx;Uid=xx;Password=xxx";

即使一切都 100% 正确,但在我将自己的 IP 地址列入白名单之前,还是无法连接。

现在一切对我来说都很完美,但问题是我应该如何将我的桌面应用程序的所有用户列入白名单,以便他们能够连接到数据库。

我可以做些什么来允许连接而不必将所有人列入白名单?

提前谢谢你
亚历克斯

【问题讨论】:

    标签: c# mysql whitelist remote-connection


    【解决方案1】:

    是的,这可能是 MySQL(甚至可能是防火墙)配置选项。我想尽管出于明显的安全问题,托管商不允许所有人都连接到托管的 MySQL 服务。

    您最好编写一个在网络服务器上运行的简单服务,该服务将发布您希望共享的数据。然后,您可以在 C# 应用程序中使用此服务。

    【讨论】:

    • 感谢您的快速回复,实际上这也是我想到的第一件事。然而,我想了很多,并没有想出一个好主意。我试图在 php 中编写一个简单的脚本,它将在我的 mysql 数据库上运行我想要的 SQL 查询,但无法找出从脚本发送和接收信息的正确方法。有任何想法吗?谢谢
    • @Alex 我不是指从客户端应用程序执行 SQL 命令的服务风格,而是关于创建例如一个 SOAP server,它将 SOAP 方法调用转换为来自数据库的结果。这些结果可以(强类型)读回您的应用程序,使您能够直接将它们作为代码中的对象使用。我想这意味着重写,但是让任何人都可以连接到 MySQL 服务器(实际上是任何 SQL 服务器)通常是一个坏主意。
    • 我明白你在说什么,这听起来是个好主意。但是,我不知道允许每个用户连接到 MySQL 数据库是不好的做法。但我想这与 SQL 注入和其他东西有关。但是,如果您可以建议我另一种方法或方法来验证用户身份以及在桌面应用程序的情况下将用户数据存储/加载到 MySQL 数据库/从 MySQL 数据库中加载/加载用户数据,我会很高兴。这是我第一次将 MySQL db 与桌面应用程序一起使用,而不是与本地 php 脚本一起使用。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2012-05-01
    • 2013-01-24
    • 1970-01-01
    • 2020-10-14
    • 1970-01-01
    • 2013-06-02
    • 2014-03-07
    • 2011-02-22
    相关资源
    最近更新 更多