概述:
WCF安全简介
1.在企业级应用中什么是“安全”
答:
(1)应用能够识别用户的身份-认证Authentication
(2)应用能够将用户的操作和可访问的资源限制在其允许的权限范围之内-授权Authorization
(3)应用能记录用户的操作记录-审核Auditing
(4)应用能确保消息在发送端和接收端的一致性-签名
(5)应用能确保消息仅对发送者期望的接收者可见-机密性
2.消息传输过程有哪些不安全因素
答:
首先可以将WCF堪称一个消息处理框架,整个框架分成两个部分-客户端和服务端
下图为客户端和服务端在网络传输中模型图
(1)拦截工具将捕获到的信息恶意篡改后转发给消息接收者-可以通过签名解决这个问题
(2)网络拦截工具捕获明文的敏感信息-可以通过加密解决这个问题
(3)钓鱼攻击-针对服务A的请求被恶意重新定位到另一个服务B,以执行一些损害访问者利益的操作,或者窃取访问者相关的一些敏感信息-可以通过服务端认证解决这个问题
(4)重放攻击-黑客利用网络拦截工具捕获针对某个服务的访问请求,让后对该请求进行复制,并以一个非常高的频率对目标服务发起调用。这样将会耗尽服务端的可用资源并导致崩溃
3.解决消息传输安全隐患
既然在网络通信层面不能提供足够的安全保障,而在应用层面去实现安全保障代码量很大,所以只能将整个安全保障体系构建与两者之间
WCF实现了一个功能齐全、可扩展的安全架构体系,能够满足绝大部分分布式应用场景的安全需求。
分布式应用程序是指:应用程序分布在不同计算机上,通过网络来共同完成一项任务。通常为服务器/客户端模式。
下图为WCF安全架构体系在分布式应用中的模型图。