3 网格安全体系结构模型的描述
网格安全协议层和网格安全基础层是安全体系结构模型中最核心的两个层次,这两个层次是解决网络安全问题的关键。我们考察网格用户使用网格资源进行网格计算时,用户、资源、进程等实体之间如何进行交互,并针对各种交互情况定义相应的安全策略。我们考察的重点放在网格用户申请分配网格资源和使用分配的网格资源时,网格用户和网格进行的复杂交互,这些复杂交互涉及一系列实体间的身份确认。
3.1 安全体系结构模型涉及的概念
安全体系结构模型涉及以下几个概念:
证书(Certificate):网格中用来证明实体身份的一段信息或一个文件,证书由可供信任的机构(认证中心)进行签发,有固定的格式,并且有一定的有效时间。
双向认证(Mutual Authentication):网格中的两个实体进行交互之前,用来证明彼此身份的真实性的一个过程。
用户代理(User Proxy):用户代理是一个由用户创建的进程,用户将他的部分或全部权限授予该进程,该进程代替用户完成双向认证、申请资源、提交作业、得到结果等工作。
资源代理(Resource Proxy):资源代理是一个由网格创建的进程,网格将一组资源的管理权限授予该进程,该进程负责这组资源的双向认证,以及分配和回收等工作。
中介(Broker):中介是一个由网格创建的进程,中介向用户代理和资源代理提供中介服务,用户代理使用中介提供的中介服务可以协同分配到多个资源代理管理的大量资源。
3.2 安全体系结构模型定义的协议
考虑网格计算的执行过程,尤其是资源的分配过程和资源的使用过程,我们就用户如何产生用户代理、系统如何产生资源代理、用户代理如何向资源代理申请分配资源、进程如何(通过用户代理)向资源代理申请分配资源、进程如何向用户代理申请签名进程证书、系统如何产生中介、中介服务如何向用户代理协同分配资源代理管理的大量资源这七个方面定义七个协议:用户代理产生协议、资源代理产生协议、用户代理申请分配资源协议、进程申请分配资源协议、进程申请签名证书协议、中介产生协议、中介服务协议。
3.3 证书的组成、获得和管理
3.3.1 证书的组成
证书是网格中的实体用来证明自己身份的一段信息或一个文件。证书由可供信任的机构(认证中心)进行签发,有固定的格式,并且有一定的有效时间。为了防止伪造证书,证书至少包含以下几部分信息:
(1)认证中心的名称:签发这个证书的认证中心的名称。
(2)证书的有效时间:这个证书有效的开始时间和结束时间。
(3)证书拥有者的名称:拥有这个证书的用户或资源的名称。
(4)证书拥有者的公钥信息:拥有这个证书的用户或资源的公钥信息,进行双向认证时用来证明证书拥有者的合法性。
(5)认证中心的数字签名:签发这个证书的认证中心的数字签名,进行双向认证时用来证明证书本身的合法性。
3.3.2 用户或资源获得证书
(1)用户或资源管理者使用命令行命令或相应的函数创建用于身份鉴别的公钥、私钥和未签名的证书,然后通过电子邮件或其它安全途径把未签名的证书提交给认证中心。
(2)认证中心收到未签名的证书后,对用户或资源进行考察。
(3)用户或资源考察合格后,认证中心用自己的证书(认证中心的证书)对未签名的证书进行签名,然后把签名的证书通过电子邮件或其它安全途径返还给用户或资源管理者。
3.3.3 证书的管理
证书的管理最主要的是证书的存储和证书的使用,其它对证书的管理包括:建立可供信任的认证中心、使用函数或软件生成公钥和私钥、使用函数或软件生成未签名的证书、使用函数或软件对证书进行签名、对用户代理和进程创建临时证书、撤销虽然未到期但是不再使用的证书或临时证书、将证书或临时证书的使用绑定在固定的节点上。
3.4 用户和资源的映射
因为用户和资源在网格的高层(网格用户和网格资源)和网格的低层(本地用户和本地资源)的身份描述是不一样的,所以首先要在这两种身份之间建立某种映射关系,才能进行各种本地安全管理和具体的本地计算。
用户和资源的映射策略和具体的用户管理策略密切相关,不同的用户管理策略将会有不同的用户和资源映射策略。一种简单的用户和资源的映射策略是建立用户和资源映射表,通过查找映射表进行用户和资源的映射。下面先解释客体、主体和信任域的概念,然后列出我们总结的四条映射关系。客体(Object)指网格中受到安全规则保护的资源;主体(Subject)指网格中可能对客体造成破坏的用户或进程;信任域(Trust Domain)指网格中一个逻辑的、可管理的区域,具有明确的边界。存在的映射关系如下:
关系1:对每一个信任域而言,存在全局客体到局部客体的映射表;
关系2:对每一个信任域而言,存在全局主体到局部主体的映射表和局部主体到全局主体的映射表;
关系3:如果将全局安全规则作用于一个全局主体和一个全局客体,这个全局主体通过了全局安全规则,也就是说这个全局主体可以操作这个全局客体,那么将这个全局主体映射到某个局部信任域内的某个局部主体后,这个全局客体也相应地映射到这个局部信任域内的某个局部客体,若这个局部主体通过了这个局部信任域内的局部安全规则,则该局部主体可以操作这个局部客;
关系4:如果一个操作跨越多个局部信任域,即这个操作涉及多个局部信任域内的局部主体和局部客体,只有当该操作涉及的每个局部主体都通过相应的局部安全规则,也就是该操作涉及的每个局部主体都可以操作相应的局部客体后,该操作才能够执行。