使用 Windows Identity Foundation (WIF) 保护 WCF 服务
1. WCF 与 WIF 概述
WCF(Windows Communication Foundation)在使用 WIF 扩展后,除了可以强制调用授权管理器外,还会为每个传入请求调用 CheckAccess 方法,此时会传入端点地址和 SOAP 操作(REST 服务则是 HTTP 动词),这替代了旧的 WCF ServiceAuthorizationManager 。这种通用的授权扩展性还允许第三方插入在更高抽象层运行的授权系统,例如图形设计器或数字模拟语言(DSLs)。
WIF 有三个基本构建块:令牌处理程序、声明转换和授权。通常,WIF 会将它们组合成一个管道,插入到诸如 WCF 和 ASP.NET 等托管平台中:
- 使用令牌处理程序将传入的安全令牌转换为声明。
- 将基于令牌的声明转换为应用程序声明。
- 进行每个请求(或显式)的授权。
- 在 Thread.CurrentPrincipal 上设置 IClaimsPrincipal 。
2. 在 WCF 服务中使用 WIF 的前提条件
- 下载 WIF 和 SDK :虽然 WIF 包含库,但 SDK 提供了额外的工具,如配置文件的智能感知和一些向导。
- 添加引用 :下载这些包后,除了典型的 WCF 库(如
System.Serv
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



