我一直在研究如何从移动设备访问数据库。做这件事有很多不同的方法。也有多种方法使其安全。从移动设备安全访问数据库的好方法是什么?
此外,考虑到我的具体情况,我有一个现有的WCF服务,做我需要的所有应用,我想重复使用它。我一直在使用jsonp呼叫服务,并为iOS、安卓和windows开发应用程序。调用是由HTTPS保护的,我将为这些调用实现一些身份验证策略。但这一切会有多安全呢?
我有一些非常敏感的数据要担心。我正在使用HTML5和JS进行应用程序开发,以保持统一,减少所有平台的管理难度。
如何访问数据库并确保数据安全?
发布于 2014-03-06 23:59:33
您根本不应该从移动设备访问任何外部数据库。
从网络的角度来看,到数据库的连接只应该在连接可靠和快速的本地网络中进行,这是移动连接无法实现的。
从设计的角度来看,直接公开数据库是个坏主意,它不仅太低,而且当用户使用不同版本的应用程序并试图对数据库做不同的事情时,这也将是一场噩梦。您应该为您的移动应用程序提供适当的高API抽象的RESTful web服务。
发布于 2014-05-06 05:15:36
最好不要让应用程序“访问数据库”--客户端应用程序逻辑应该与数据库实现的细节分开。客户机只需向服务器发出请求&让服务器为您处理与数据库对话的细节。
如果我们后退一步,忽略客户端是一个移动设备,您需要的基本上是标准的三层软件体系结构。也就是说,您有一个相对“愚蠢”的客户端,它与管理业务逻辑的中间层进行通信&为您与数据库对话。这简化了您的客户端&允许您专注于将安全性放在中间层--即使您的通信被破坏,如果您中间层中没有“删除所有用户”方法,来自客户端的消息也不会删除所有用户。
听起来,WCF服务可以处理客户端/服务器之间的通信,您似乎已经做得很好了。只需确保将客户端对服务器的请求从结果应该是什么的角度来考虑&而不是获取这些结果的具体步骤,您就会有一个非常干净的系统。
我对WCF不太了解,但如果功能还没有内置,可能会有很多关于如何正确保护WCF的文章。只需确保您从不信任客户端做正确的事情,并且始终让您的服务器在执行请求之前确保它们是有效的,并且您应该是黄金的。
https://softwareengineering.stackexchange.com/questions/231500
复制相似问题