为什么不直接将android连接到数据库?

时间:2012-11-20 11:03:06

标签: android mysql sql sql-server security

我看到很多人试图直接在SQL Server或MySql等数据库中连接Android设备,答案总是一样:使用Web服务。为什么不直接将Android设备与数据库连接?我在Android应用程序中使用本地网络。

4 个答案:

答案 0 :(得分:12)

有很多原因。

  1. 安全性 - 如果用户具有直接访问权限,他们可以从您的数据库中获取任何内容。此外,他们将在您的数据库中有一个密码。因此,如果您使用的SQL服务器存在缺陷,那么他们可以利用它。此外,如果您的权限设置错误,可能会擦除您的数据库。
  2. 速度 - 如果用户经常使用大型查询,那么它可能会使您的系统快速且不必要地陷入困境。如果你通过网络界面,你可以限制它。
  3. 辅助功能 - 几乎所有内容都支持Web查询。它需要特殊客户端直接访问SQL数据库。
  4. 但如果您完全信任您的用户,拥有正确的库/驱动程序,那么您可以允许直接查询,甚至可能更快一点。

答案 1 :(得分:4)

如果您的应用直接连接到数据库服务器,则必须硬编码非常不安全的用户名/密码。使用某些工具,攻击者可以反编译您的apk并以这种方式访问​​用户名/密码,并且可以使用读取(+写入)访问权限连接到您的数据库,而无需使用您的应用程序。

答案 2 :(得分:0)

原因是连接

你不确定你有多少时间维持这种联系,如果它稳定并且你不会丢失它

其次,Web服务经过优化,可以检索信息并通过标准提供精美的服务。您还可以缓存信息以备用数据库

答案 3 :(得分:0)

不直接访问数据库的另一个原因

问题如果您更改了数据库架构。 你有两个解决方案。

1-在直接访问中,您需要更新每个客户端应用程序
 2-使用服务你只需要升级服务。