此问题是我在此处提出的上一个问题的更新版本。
我是SQL Server作为关系数据库的客户端 - 服务器模型的新手。我已经读过SQL Server的公共访问不安全。如果直接访问数据库不是一个好习惯,那么应该在服务器和客户端之间放置什么样的层?请注意,我有一个桌面应用程序,它将作为客户端和远程SQL Server数据库,为客户端提供数据。客户端将输入其用户名和密码以查看其数据。我听说过VPN,ISA,TMG,终端服务,代理服务器等术语。我需要一个快速安全的n层架构。
P.S。我听说过数据库前的Web服务。我可以使用WCF来检索,更新,插入数据吗?在安全性和性能方面它会是一个好方法吗?
答案 0 :(得分:2)
Web服务层对于智能客户端来说非常常见,因为它是用户客户端和服务器之间的一个层。这允许:
您可以使用WCF与应用层进行通信,但您不应该考虑“INSERT”,“UPDATE”等 - 您应该考虑对您的域模型有意义的操作 - “CreateOrder” “操作等.ADO.NET数据服务允许API更类似于”INSERT“等,但它不像您希望的那样必须用于安全服务。
性能实际上是“我在运行什么样的查询?”的一个因素。和“我转移了多少数据?”。只要你保持操作正常(即不通过网络获取整个“订单”数据只是为了找到最近的订单日期),那么你应该没问题。