作者
: Joseph Davies,
出处
:
微软
,
责任编辑
:
袁绍龙
,
2007-05-14 14:10
当访问客户端连接到受保护的网络时,客户端必须使用协商的身份验证方法向身份验证服务器进行验证。例如,访问客户端和身份验证服务器可能协商使用特定的密码身份验证协议,例如第二版
Microsoft
质询握手身份验证协议
(MS-CHAP v2)
。但是,如果访问客户端和身份验证服务器使用内置的硬编码身份验证方法,则难以添加新协议。
可扩展的身份验证协议
(EAP)
是一种体系结构框架,它为常用受保护的网络访问技术
(
如基于
IEEE 802.1X
的无线网络
)
和点对点协议
(PPP)
连接
(
如拨号连接和
×××
连接
)
提供可扩展的身份验证方法。
EAP
不同于
MS-CHAP v2
身份验证方法,它是基于访问客户端和身份验证服务器的体系结构框架,它允许网络供应商开发并轻松安装称为
EAP
方法的新身份验证方法。有关
EAP
的更多背景信息,请访问
Microsoft EAP
网页,网址是:
microsoft.com/eap
。
尽管自
Windows 2000
起
Microsoft® Windows®
就支持
EAP
,但
Windows XP
和
Windows Server® 2003
中的
EAP
体系结构对于
EAP
方法和请求方
(
可以在特定类型的链路层上使用
EAP
的软件组件
)
还是存在扩展限制。
Windows Vista&S482;
和代号为
“Longhorn”
的下一版
Windows Server
中的
EAPHost
体系结构解决了这些限制,使第三方网络供应商可以为新的请求方和
EAP
方法更轻松地扩展
Windows
。
Windows Server 2003
和
Windows XP
中的
EAP
支持
Windows Server 2003
和
Windows XP
将
EAP
用于以下连接:使用
802.1X
进行身份验证的无线或有线连接,以及基于
PPP
的连接
(
如基于拨号或
×××
的远程访问或者站点对站点的连接
)
。具体来说,这些操作系统包含符合
RFC 2284
的
EAP
实现,并包含
IEEE 802.1X
和
PPP
请求方。
图
1
显示了
Windows XP
和
Windows Server 2003
的
EAP
和请求方体系结构。但是,请注意,在
Windows XP Service Pack 2 (SP2)
和
Windows Server 2003 SP1
中的
EAP
实现都不支持
RFC 3748(
用于
EAP
的最新
Internet
标准
)
和其他
EAP RFC
。
图
1 Windows XP
和
Windows Server 2003
的
EAP
及请求方体系结构
EAP API
提供了在
Windows XP
和
Windows Server 2003
中扩展身份验证的方法。尽管第三方供应商可以开发和安装新的
EAP
方法,但内置的
PPP
和
802.1X
请求方并不能使用所有安装的
EAP
方法。例如,供应商可以创建新的具有指纹扫描功能的
EAP
身份验证方法,但是该方法可能不能用于无线连接。
由于内置请求方的限制,某些第三方软件和硬件供应商开发他们自己的请求方时,通常需要替换和禁用内置的请求方和整个
EAP
体系结构。但是,这种替换方法存在几个问题。首先,替换内置请求方和
EAP
体系结构会增加开发成本并导致开发延迟。此外,如果企业客户不开发自己的请求方,则可能会增加授权和安装第三方产品而带来的每客户成本。
EAPHost
功能
EAPHost
提供以下新功能:
支持其他
EAP
方法。
EAPHost
将支持
[url]www.iana.org/assignments/eap-numbers[/url]
上的
EAP
注册表中列出的所有
EAP
方法的安装和使用,以及其他流行的身份验证方法,例如由
Cisco Systems, Inc.
开发提供的
Lightweight EAP (LEAP)(
轻型
EAP (LEAP))
。
网络发现。
EAPHost
支持
RFC 4284
中所定义的网络发现。
符合
RFC 3748
。
EAPHost
符合
EAP
状态机,并解决了
RFC 3748
中指定的众多安全漏洞。而在以前,请求方必须实现自己的状态机。此外,
EAPHost
还支持
“
扩展的
EAP
类型
”
等功能
(
包括特定于供应商的
EAP
方法
)
。
EAP
方法共存。
EAPHost
允许同一个
EAP
方法的多个实现共存。例如,可以同时安装和选择
Microsoft
版本的
Protected EAP(
受保护的
EAP
,
PEAP)
和
Cisco Systems, Inc.
版本的
PEAP
。
模块化请求方体系结构。
EAPHost
支持模块化请求方体系结构。在该体系结构中,可以轻松地添加新的请求方,而不必像早期版本中那样替换整个
EAP
实现。
对于
EAP
方法供应商,
EAPHost
支持针对
Windows XP
和
Windows Server 2003
开发的
EAP
方法,并提供一种更为简单的方法,用以为
Windows Vista
和
Windows Server“Longhorn”
开发新的
EAP
方法。
EAPHost
还可以更好地对
EAP
类型进行分类,从而可供内置的
IEEE 802.1X
请求方使用。
对于请求方供应商,
EAPHost
支持新链路层的其他请求方。由于
EAPHost
与网络访问保护
(NAP)
相集成,因此新的请求方不必具备识别
NAP
的功能。为了加入
NAP
,新的请求方只需注册一个连接标识符和一个通知请求方重新进行身份验证的回调函数。有关
NAP
的详细信息,请参阅本期《
TechNet
杂志》中
John Morello
撰写的
“
安全观察
”
专栏,以及
NAP
网页
microsoft.com/nap
。有关如何开发
EAP
方法或
EAPHost
请求方的详细信息,请参阅
“
可扩展的身份验证协议
(EAP)
宿主
”
,网址是
msdn2.microsoft.com/aa364249.aspx
。
EAPHost
和
EAP
基础体系结构
EAPHost
体系结构包括:
EAPHost
的
EAP
基础体系结构、
EAP
对等方
(
身份验证客户端
)
上的
EAPHost
体系结构,以及身份验证服务器上的
EAPHost
体系结构。图
2
显示了在运行
Windows Vista
或
Windows Server“Longhorn”
的计算机上,
EAPHost
的
EAP
基础体系结构的组件。在这些操作系统上,
EAP
对等方包含:一个请求方层
(
如
802.1X
的内置请求方
)
,用于
EAP
对等方的新
EAPHost
体系结构
(
便于请求方和
EAP
方法的通信和管理
)
,一个执行身份验证的
EAP
方法层。
Windows Server“Longhorn”
的身份验证服务器包含:网络策略服务器
(NPS)
,用于身份验证服务器的新的
EAPHost
体系结构,以及一个
EAP
方法层。在
Windows Server 2003
中,
NPS
被称为
Internet
验证服务
(IAS)
,它是一个远程身份验证拨入用户服务
(RADIUS)
服务器和代理,也是
NAP
的策略服务器。
EAP
对等方中的请求方使用链路层技术
(
如
PPP
或
802.1X)
在
EAP
对等方与传递验证器
(
如无线接入点或远程访问服务器等网络访问服务器
)
之间的链路上发送和接收
EAP
消息。在身份验证服务器上,传递验证器和
NPS
使用
RADIUS
在传递验证器与
NPS
之间,在基于
IP
的网络上发送和接收
EAP
消息。
在
EAP
对等方和身份验证服务器协商使用特定的
EAP
方法后,逻辑通信则包含在
EAP
对等方上协商的
EAP
方法与身份验证服务器之间发送的
EAP
消息。
图
2 EAPHost
的
EAP
基础体系结构
(
单击该图像获得较小视图
)
图
3
显示了运行
Windows Vista
或
Windows Server“Longhorn”
的
EAP
对等方上的
EAPHost
体系结构。该体系结构包含请求方、
EAPHost
组件、
EAP
方法管理组件和
NAP
组件。
图
3 EAP
对等方上的
EAPHost
体系结构
(
单击该图像获得较小视图
)
Windows Vista
和
Windows Server“Longhorn”
包括针对基于
802.1X
的无线和有线连接的
802.1X
请求方。目前正在对用于基于拨号或
×××
的远程访问、或者站点对站点连接的
PPP
请求方进行研究,以便将来更新这两个操作系统。此外,还可以添加由第三方开发的其他请求方。
EAPHost API
允许请求方使用
EAP
进行连接。有关详细信息,请参阅
msdn2.microsoft.com/aa364249.aspx
上的相关文章。
EAPHost
组件包括
EAP
客户端状态机
/
协议验证器,用于维护
EAP
对等方状态机
(
请参阅
RFC 3748)
和验证
EAP
消息。此外,还包括
EAP
方法管理器,用于管理各种
EAP
方法
(
无论是否与
EAPHost
兼容
)
,使
EAP
方法可供应用程序和服务使用。最后,还包括
EAP
库管理器,以便于加载和卸载
EAP
方法库。
EAP
方法组件包括:
内置
EAP
方法。
其中包括
PEAP
、
EAP
传输层安全性
(TLS)
和
EAP-MS-CHAP-V2
。
两个宿主
API
。
它们承载非
EAPHost
兼容的
EAP
方法
(
原有
EAP API)
和第三方的
EAPHost
兼容的
EAP
方法
(EAPHost
方法
API)
。
原有转换器方法。
用于在非
EAPHost
兼容的
EAP
方法
(
写入到原有
EAP API)
与
EAPHost
方法
API
之间进行转换。
EAP
方法代理管理器
.
用于承载第三方
EAP
方法
(
无论它们是否与
EAPHost
兼容
)
。
EAP
方法
API
是新的
API
,用于
EAPHost
兼容的
EAP
方法。
EAP
方法导出
EAP
方法
API
中定义的
API
。
EAPHost
加载
EAP
方法并调用导出的
API
函数。
NAP
组件包括以下各项:
EAP NAP EC Messenger .
该组件可以促进
NAP
相关数据的通信,例如在
EAPHost NAP
强制客户端
(EC)
与
EAPHost
其他组件之间的运行状况和事件声明。
EAPHost NAP EC .
该组件与其他
NAP
组件进行交互,以提供运行状况验证,并在
802.1X
身份验证的连接不符合
NAP
系统运行状况要求时进行强制限制访问。
NAP
代理。
该组件维护客户端当前运行状况,并促进安装的
NAP EC
与系统运行状况代理
(SHA)
层之间进行通信。每个
SHA
都可以针对一个或多个系统运行状况要求进行定义。
如图
3
所示,第三方供应商可以开发新的请求方和新的
EAPHost
兼容的
EAP
方法。您也可以使用为
Windows Server 2003
或
Windows XP
开发的现有
EAP
方法。
图
4
显示了运行
Windows Server“Longhorn”
和
NPS
的身份验证服务器上的
EAPHost
体系结构。该体系结构与支持
EAP
方法的
EAP
对等方的体系结构相同。
不必通过请求方,该身份验证服务器通过
NPS
用
EAPHost API
来使用和配置
EAP
方法。在
EAP
组件内,
EAP
服务器状态机
/
协议验证器执行以下任务:维护
EAP
身份验证服务器状态机,并验证传入的
EAP
消息。
身份验证服务器上的
EAPHost
允许第三方软件供应商开发和安装新的
EAPHost
兼容的
EAP
方法,并支持已针对
Windows XP
和
Windows Server 2003
开发的
EAP
方法。
对于
EAP
对等方和身份验证服务器,
EAPHost
还提供了
EAPHost UI
代理
API(
图
3
和图
4
中未显示
)
,
EAPHost
兼容的方法可将其用于显示需要用户交互的对话框。
EAPHost UI
代理
API
允许第三方供应商添加自己的对话框,来提供更加完美的用户体验。
总结
Windows Server“Longhorn”
和
Windows Vista
中的
EAPHost
将
Windows
中的
EAP
实现按最新
Internet
标准进行了更新,并提供了新的模块化体系结构,以便用
EAP
身份验证方法和请求方来扩展
Windows
。网络供应商通过开发新请求方
(
写入
EAPHost API)
和新身份验证方法
(
写入
EAPHost
方法
API)
,而无需替换整个
Windows EAP
实现即可扩展
Windows
中的现有用户体验。
EAPHost
还支持为
Windows Server 2003
和
Windows XP
开发的现有
EAP
方法。
转载于:https://blog.51cto.com/foresun/40649