首页 > 文章中心 > 正文

网格安全安全技术

网格安全安全技术

摘要:网格技术是一门新兴的信息技术,是Internet发展的必然结果。网格的安全问题由于关系到网格技术能否在企业和商业领域得到广泛的应用,所以显得尤为重要。通过对网格安全的特殊性和网格安全所面临的问题进行分析,详细叙述了网格安全的需求,当前网格安全的几种技术和解决方案。

关键词:“网格网格安全安全技术Globus

一、引言

网格(Grid)技术是近年来国际上信息技术领域的热门研究课题,是以互联网为基础的一门新兴技术。网格是高性能计算机、数据源、因特网三种技术的有机组合和发展,它把分布在各地的计算机连接起来,使用户分享网上资源,感觉如同个人使用一台超级计算机一样。从数量上说,网格的带宽更高,计算速度和数据处理速度更快,结构体系比现有的网络更能有效地利用信息资源。简而言之,网格是一种信息社会的网络基础设施,它将实现互联网上所有资源包括计算资源、存储资源、通信资源、软件资源、信息资源、知识资源等在内的互联互通。

网格技术的最大优点之一是有利于实现地理上广泛分布的各种计算资源和数据资源的共享,但这些共享必须建立在安全访问的基础上。由于网格技术的大规模、高速、分布、异构、动态、可扩展等特性,使得安全问题成为网格技术得到普遍使用的一大阻碍,并且随着网格逐渐从实验和科研阶段进入商业领域,解决网格环境中的安全问题已经成为当务之急。

二、网格安全的特殊性

Internet的安全保障主要提供两方面的安全服务:(1)访问控制服务,用来保护各种资源不被非授权使用;(2)通信安全服务,用来提供认证,数据保密与完整性,以及通信端的不可否认性服务。但这两个安全服务不能完全解决网格系统的安全问题。网格系统必须具有抗拒各种非法攻击和入侵的能力,确保系统的正常高效运行和保证系统中的各个信息的安全。因此,网格系统的安全问题的覆盖面更广,解决方案也更加复杂。

一个网格系统的网格安全体系在考虑Internet安全问题之外,还必须考虑网格计算环境的如下特征:(1)网格计算环境中的用户数量很大,且是动态可变的;(2)网格计算环境中的资源数量很大,且是动态可变的;(3)网格计算环境中的计算过程可在其执行过程中动态请求,启动进程和申请、释放资源;(4)一个计算过程可由多个进程组成,进程间存在不同的通信机制,底层的通信连接在程序的执行过程中可动态地创建并执行;(5)资源可支持不同的认证和授权机制;(6)用户在不同的资源上可有不同的标识;(7)资源和用户属于多个组织。正是由于网格计算环境的特殊性,因此在设计网格安全机制时特别要考虑计算环境的动态主体特性,并要保证网格计算环境中不同主体之间的相互鉴别和各主体间通信的保密性和完整性。

三、网格环境中面临的安全问题

网格环境中所面临的安全性问题可以大致分为3类:现有技术和安全协议的集成及扩展;不同主机环境之间协同工作的能力;相互影响的主机环境之间的信任关系。

1.现有技术的集成及新技术的发展

不论是出于技术原因还是其他原因,期望某一种安全技术来解决所有网格计算的安全问题是不现实的。现有的安全架构不可能在一夜之间被取代。例如:网格环境中的每一个域可能有一个或多个用来存放用户账户的寄存器(如:LDAP目录),这些寄存器是不可能与其它组织或域共享的。同样,现有环境中被认为安全可靠的认证机制也会继续使用。因此,这些倾向于使用单一模式或机制的技术不大可能轻易被取代。

为了获得成功,网格安全体系结构需要过度到对现有安全体系结构和跨平台、跨主机模式的集成。这意味着该体系结构可由现有的安全机制来实现,同时,要有可扩展性和可集成性。

2.协同工作的能力

穿越多个域和主机环境的服务需要能够互相影响,协同工作。协同工作能力主要表现在下面几个层面:

(1)协议层:即消息传输过程中需要保证消息的完整性和保密性并对消息进行数字签名,这就需要安全的域间交换信息的机制,比如附加了WS-Security规范的SOAP/HTTP。

(2)策略层:为了进行安全的会话,参与协同工作的每一方必须能够详细说明它要求的任何策略比如隐私权策略,要求使用特定的加密算法(如tripleDES)等,同时这些策略也能容易地被其他方所理解。这样,各方才能尝试建立安全的通信信道和有关互相认证、信任关系的安全语义。

(3)身份鉴定层:在进行交互的过程中需要有在不同域间相互鉴别用户身份的机制。由于网格环境中交互的动态性,一种确定的身份不能被预先定义成跨越多个域。为了在安全环境中成功实现跨越多个域,必须要实现身份和信任的映射,这可以通过建立相应的身份服务来完成。

3.信任关系的建立

网格服务需要跨越多个安全域,这些域中的信任关系在点对点的跨越中起着重要的作用。每一种服务要将它的访问要求阐述清楚,这样,需要访问这些服务的实体就可以安全地访问。端点间的信任关系应该用策略来清楚地描述。信任的建立过程对每个会话来说或许是一次性的活动,也有可能对于每一次请求都要动态地进行评估。由于网格的动态特性,有些情况下不可能在应用程序执行前预先在这些域中建立信任关系。总之,网格环境中的信任关系非常复杂,它需要支持动态的、用户控制的配置和瞬间服务的管理。瞬间服务是用户为了执行特定请求任务而生成的,这些任务甚至包括用户代码的执行。

这3方面的安全性问题间的依赖关系如图1所示,每一个问题的解决通常依赖于另一问题的解决,比如不同虚拟组织间为了获得相互协作的联合信任就依赖于定义在虚拟组织内部的信任模型及服务集成标准。而定义一个信任模型又是相互协作的基础但同时又独立于协作的特性,同样,服务集成及扩展标准暗含了信任关系标准也和协作操作有关。

四、安全需求

网格系统及其应用可能需要任何或全部的标准安全功能,包括鉴别、访问控制、完整性、保密性和不可抵赖性。这里主要论述鉴别和访问控制问题,特别地我们希望解决:提供鉴别解决方案,允许用户完成计算的进程和这些进程所使用的资源彼此相互验证;在任何时候都尽可能地不改变访问控制机制。鉴别是安全策略的基础,使得各个局部安全策略被集成为一个全局框架结构。

要开发一个满足这些要求的安全体系结构,需要满足以下限制条件:

单一密钥,网格计算环境需要一种机制对密钥进行统一管理,以实现不同域之间的有效访问控制。

信用数据的保护,众多用户的私钥、口令等要确保万无一失。

与本地安全机制的互操作,不必改变每个本地资源的安全策略,就可借助跨域的安全服务器方便地访问各地资源。

可输出性,要求在不同国家的试验床上代码是可提供、可执行,也就是安全策略不应直接或间接要求过多的加密。

证书结构的一致性,为了不同域、不同类型用户之间的认证,统一规范的格式是必须的。

支持动态群组通信,网格计算中,时常会有临时的组队需求,目前的安全机制(即使是GSS-API)不具备这样的特点。

支持多种实现技术,安全策略应该不局限于特定的实现技术,应该对包括公钥、秘密钥等多种安全技术有包容性。

五、网格安全技术

目前,网格安全技术主要有:密码技术,安全传输技术,安全认证技术,访问控制技术和WebServer安全技术。密码技术是以保护信息传递的机密性、获得对所发出或接收信息在事后的不可抵赖,以及保障数据的完整性为目的。根据加密密钥类型的不同将密码技术分为两类:对称加密系统和非对称加密系统。安全传输技术主要有SSL/SSH,IPSEC/IPv6,S/MIME,这些技术保证了数据安全有效的传输。安全认证技术主要包括PKI和Kerberos,其中PKI(PublicKeyInfracture)技术是目前应用最广泛的网格安全技术,即公开密匙基础设施。它是用一个公钥(PublicKey)概念和技术来实施和提供安全服务的具有普适性的安全基础设施。而在PKI系统中,CA(CertificateAuthority)是一个域中的认证中心,是一个可信任的第三方机构。用户之间的通信和验证都依赖CA所颁发的证书。

访问控制技术主要有自主型访问控制(discretionaryaccesscontrol,DAC),强制型访问控制(mandatoryaccesscontrol,MAC),基于角色的访问控制(role-basedaccesscontrol,RBAC),防火墙等。WebService安全技术中,WebService由WSDL(WebServiceDescriptionLanguage)进行描述,处理由XML编码的SOAP信息。WS-Security为WebServices提供全面保证。

六、网格安全的一种具体解决方案

Globus是目前国际上最具影响的网格计算项目之一,它是由多个机构联合开发的项目,力图在科学计算领域和商业领域对各种应用进行广泛的、基础性的网格环境支持,实现更方便的信息共享和互操作。

GSI(GridSecurityInfrastructure,网格安全基础设施)是Globus的安全基础构件包,也是保证网格计算安全性的核心。GSI支持用户、资源、认证机构和协议的实现。

GSI的主要目标是要为多个网格系统和应用程序提供单点登录,提供可以在多个组织之间使用而不要求集中管理授权的安全技术,以及在同一网格中的多个不同元素之间提供安全的通信机制。

为了对协议和机制进行隔离(如图2),GSI采用GSS—API(GenericSecurityServiceApplicationProgramminginterface)作为其安全编程接口。GSS—API定义提供了通用的安全服务,支持各种安全机制和技术,还支持应用程序在源码级的可移植性,GSS—API主要面向主体之间的安全鉴别和安全通信操作,它提供的功能包括:获得证书、执行安全鉴别、签署消息和加密消息等。

GSS—API在安全传输和安全机制上是独立的,这体现在两个方面:

(1)传输独立性。GSS不依赖于特定的通信方法或通信库,而且某个GSS调用会产生一系列的标记并进行通信,目前可支持TCP、UDP等通信协议。

(2)机制独立性。GSS不依赖于特定的安全算法,如Kerberos、DES、RSA公钥密码。它是根据安全操作过程定义相应的函数,每个操作可通过不同的安全机制来实现。

GSS—API符合简单公钥机制SPKM(SimplepublicKeyMechanism)。而SPKM的密钥管理与X.509兼容。GSS—API支持在安全上下文建立过程中的安全授权数据通信,当然,它也支持其他的安全机制。为了保证对通信内容的保密性和高效性,可对通信内容进行加密,提供某种程度的服务并保证质量。

Globus项目的GSI是解决网格计算中安全问题的一个集成方案,已经成功应用于一个连接4个国家近20家机构的实验网。GSI的特点在于在保证网格计算安全性的同时,尽量方便用户和各种服务的交互。GSI还充分利用了现有的网络安全技术并对其中某些部分进行了扩充,使得GSI在网格计算环境下拥有一个一致的安全性界面,极大地方便了网格应用的开发和使用。

七、结束语

在网格环境中,安全问题比一般意义上的网络安全问题的覆盖面更广,解决方案也更加复杂,只有在实践中摸索出切实、可靠的安全策略,才能真正使网格这一新兴技术焕发蓬勃的生命力。

参考文献:

[1]FosterI,KesselmanC.TheGrid:BlueprintforaNewComputingInfrastructure[M].MorganKaufmannPublishers,Inc.,SanFrancisco,California,1999:205-236

[2]FosterI,KesselmanC,TueckeS.TheAnatomyoftheGrid:EnablingScalableVirtualOrgnization[J].InternationalJournalofSupercom-puterApplications,2001,15(6):200-222

[3]PearlmanL,WelchV,FosterI,etal.ACommunityAuthorizationServiceforGroupCollaboration[R].In:IEEE3rdInternationalWorkshoponPoliciesforDistributedSystemsandNetworks,2001

[4]TheGlobusProject

[5]都志辉陈渝刘鹏:网格计算.北京:清华大学出版社,2002

[6]刘华志李连朱爱红:网格安全问题初探.微机发展,2004,14(2)