gpt4 book ai didi

java - 我如何从 Android 应用程序安全地访问基于 Web 的 MYSQL 数据库

转载 作者:太空宇宙 更新时间:2023-11-03 12:07:35 25 4
gpt4 key购买 nike

我在互联网上有一个 SQL 数据库,里面有信息我需要我的 Android 应用程序才能访问该信息应用程序需要知道数据库的用户名和密码它怎么知道?

如果我把它编码进去,任何人都可以得到它

最佳答案

一般而言,数据库不应公开访问,也不应由用户应用程序直接访问,原因如下:

  • 通常没有简单的方法来实现行级访问控制。 View 和触发器只能让你走到这一步——一般来说,应用程序级用户不能很好地映射到数据库用户,因为后者通常可以访问比前者应该拥有的多得多的数据。

  • 数据库客户端绑定(bind)到实际的数据库架构。让客户端(例如 Android 应用程序)不受您的控制是一种非常好的方式,可以将您束缚在不允许任何和所有 future 开发的方式中。

  • 拥有一个向世界开放的数据库端口无论如何都不被认为是安全的。任何潜在的安全漏洞都可以直接访问您的所有数据。 MySQL security guidelines明确警告不要将数据库端口打开到互联网。

  • 没有办法保护数据库凭据或数据免受足够坚定和知识渊博的用户的侵害。如果您的应用程序可以访问某些内容,那么它们也可以。

  • 数据库访问协议(protocol)在设计时主要考虑了局域网,而不是 Internet 固有的不可靠特性。甚至加密和安全性也往往是事后才想到的......

解决此问题的标准方法是创建一个具有独立用户帐户和一组受限数据操作的中间网络服务。 Web 服务将允许每个用户只访问与他们相关的数据,甚至是间接的。这种方法将数据与用户应用程序层分开,使您可以根据需要灵活地存储和访问数据,并为您的数据库提供额外的安全层。

关于java - 我如何从 Android 应用程序安全地访问基于 Web 的 MYSQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25753082/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com