实施网格安全策略必须集中于域间相互作用和映射域间操作。对单一信任域内的操作可通过Kerberos 和SSH方法。对每个信任域,都要有一个从全局到局部主体的映像。位于不同信任域的实体间的操作要求相互鉴别。一个被鉴别的全局主体映像为一个局部主体时,被看作等同于局部主体的本地认证。在一个通用的计算环境中,主体和对象必须包含组内所有计算的实体。一个计算包括许多过程,每个过程代表一个用户。其中对象包括可用于网格环境中的大范围的资源。
基于GSI的安全策略是通过通用安全服务编程接口GSS-API、安全认证管理和用户代理的实现三个方面来体现的。在GSI中,着重解决的是安全的认证问题。
GSI通过创建用户代理、代理分配资源、进程分配资源、映射权限四种安全操作协议,充分体现了网格的解决方案。全局命名(证书)和代理证书使得用户对所有的访问资源只进行一次认证。代理证书和委托技术允许一个进程来代表用户访问资源。在GSI的安全策略和单一登录机制的基础上,构建一个网格安全体系,该体系结构体现了用户、资源和过程的鉴别,它支持用户到资源、资源到过程、过程到资源、过程到过程的鉴别。及与本地策略的相互协作及对不同资源的动态请求。
GSI的安全认证
安全认证是对请求者与接受者双方进行身份验证的一个过程,是在SSL上进行的一个成功的安全认证,可以校验一个请求连接的合法性,并为其后的双方通信提供一个会话密钥。GSI的安全认证是基于用户的私钥创建一个代理,从而为用户提供认证方法。用户如果没有创建这个代理,就不能提交作业,也不能传输数据。
GSI认证(certificates)的一个关键是认证证书。在网格计算环境中的每个用户和服务都需要通过认证证书来验证身份,GSI证书采用了X.509的证书格式。主体名称(subject name)是用来明确认证证书所表示的人或其它对象。主体的公钥(public key)来自于X.509 认证签署证书的认证中心。标识则记录了认证中心的名称。签署证书的认证中心的数字签名是可用来确认认证中心的合法性。
在相互认证进行之前,双方要相信彼此的认证中心。双方有彼此认证中心自身的证书,就可以确保双方由认证中心签署的证书具有合法性。双方主体都获得了证书,而且都信任彼此的认证中心后,则双方可相互明确彼此的身份,这就是相互鉴别(mutual authentication)的过程。GSI采用SSL( Secure Sockets Layer)协议作为它的相互认证协议。
认证是安全通信基础
网格安全问题是网格计算中的核心问题。网格计算的特点是网格计算会将现有的各种标准协议有机地融合起来,从而在网格计算中将协议和技术集成起来。网格系统和应用中的每个用户和服务,要求所有的安全标准,包括安全认证、安全身份相互鉴别、通信加密以、私钥保护及委托与单点登录,都能在网格计算环境中通过认证证书来验证身份。提供一个较好的认证解决方案,可以使用户,包含用户计算的过程以及该过程使用的资源都可以证明彼此的身份。
认证是形成安全政策的基础,它可以使各个局部安全策略都被集成为一个全局的框架。从而更加有利于网格实体之间实现安全的通信。