我为客户的CRM系统构建移动前端。 CRM数据存储在其本地网络中的SQL Server数据库中。将此数据提供给移动应用用户的最佳做法是什么?移动应用程序将使用Enterprise密钥分发,而不是通过App Store分发。
我正考虑在本地服务器上运行WCF服务,并通过以太网访问SQL服务器。此服务将提供基本身份验证。但我不确定它是否是安全方面的最佳方式。
如何提供对SQL服务器数据的访问?
答案 0 :(得分:0)
WCF Web服务绝对可以用作SQL前端。在手持设备上运行的基于Windows或JavaScript的客户端应用程序可以轻松访问WCF应用程序,并且有大量关于使用WCF应用程序作为数据库前端的示例代码。这是CodeProject的示例项目。
安全性方面,有几个选项:您可以创建一个Login(ID,PWD)函数,所有未经过身份验证的用户请求在到达SQL Server之前必须通过该函数。用户进行身份验证后,您可以创建持久会话或向客户端发送可用于在后续请求中重新进行身份验证的SessionID。您还可以使用更多异国情调和复杂的方法进行身份验证/授权,例如客户端证书和表单,但在iOS或Android设备上肯定会需要额外的工作。
由于访问公司核心数据的公共Web服务是黑客的梦想,因此您始终可以设置Web服务,以便只能通过VPN从公司防火墙内部访问。如果不是这样,那么您可以使用SSL或消息级加密。