|
1
1
更新: 新的问题基本上是“WCF数据服务能否限制访问?”是的。 这些问题很难回答,因为您没有发布您的需求、SLA或安全需求。对于我的业务线来说,WCF数据服务很好,但根据您尚未发布的各种详细信息,可能不适合您。 两个想法: 1)WCF数据服务仅为REST,与手动滚动的WCF服务不具有相同的选项安全性。你必须像克里姆林宫那样把一切都锁起来吗?WCF数据服务可能不是您的茶。 2)WCF数据服务非常适合于只读的“从产品中选择前50个*类型”服务方法。通常,您必须为应用程序的每种实体类型编写几个WCF服务方法。通过在正常的WCF服务之上利用WCF数据服务,您可以节省大量时间反复编写相同的读取方法。 |
|
|
2
1
OData是用于访问数据的协议,而不是用于保护数据的协议。没有标准的解决方案可以将对数据的某些部分的访问仅限于特定的角色或帐户,就像在每个普通的SQL数据库中一样。大多数安全措施都基于“所有内容都可见,并且允许所有操作,除非您为特定情况指定了其他选项”,而不是“默认安全”。 当您希望使用OData从业务线应用程序中访问公司数据时,这是一个很大的障碍。如果您计划使用Ajax调用,那么您的OData必须在互联网上可见,从而容易受到各种攻击。对于已经在互联网上可用的公共数据,OData似乎是一个很好的协议,但据我所知,目前没有OData提供程序能够实现现成的基于角色的权限。 可以用这种权限扩展标准的WCF数据服务,但这是有代价的。我从经验中知道,安全性不能在以后添加,它必须是任何应用程序框架和数据存储设施的组成部分。你可能希望最好,但你总是需要为最坏的情况做计划,不久就会有人在互联网上寻找包含个人和公司敏感数据的不安全的OData来源。 |