
2.3 控制机制
2.3.1 身份认证
1.认证过程
身份认证机制一般包括三项内容:认证、授权和审计。认证也称鉴别和确认,主要用在执行有关操作之前对操作者的身份进行证明。身份认证主要通过标识和鉴别用户身份,以防止冒充合法用户进行资源访问;当证实用户身份合法时,授予该用户应有的权力,以使该用户能进行与其身份相符合的有关操作;将该用户所做的各项操作如实记录下来,以便核查责任,防止抵赖。典型的认证过程如图2-8所示。

图2-8 典型的认证过程
身份认证可以是双向认证也可以是单向认证。如果通信的双方只需要一方鉴别另一方的身份,则称为单向认证。如果双方均需证实身份,称为双向认证。
在网络系统中,用于认证用户身份的方法主要有三类。一是用户的密码,如口令、密钥等;二是用户的证件,如身份证、IC卡等;三是用户的属性特征,如指纹、DNA、笔迹等。其中,第一类和第二类是目前较常用的,而应用最广的是第一类。
在第一类方法中,其身份认证的条件是:
用户身份 = 用户账号 + 密码
当一个用户需要访问资源时,先向身份认证服务器申请(提交用户账号和密码),服务器响应后,进行审查,当审查通过时,为其授予相应权力,并允许用户访问相应资源。
2.对等实体认证
这种认证服务当由(N)层提供时,将使(N+1)层实体确信与之打交道的对等实体正是它所需要的(N+1)层实体。换言之,在提供对等实体认证服务期间,通信的一方可以证实另一方的身份并确立信任关系。
在连接建立或在数据传送阶段的某些时刻使用对等实体认证,可以证实一个或多个连接实体的身份。使用这种服务可以确信(仅仅在使用时间内)一个实体此时没有试图冒充别的实体,或没有试图将先前的连接作非授权地重演。实施单向或双向对等实体认证是可能的,可以带有效期检验,也可以不带。这种认证服务能够提供各种不同程度的保护。
3.数据原发认证
这种认证服务当由(N)层提供时,将使(N+1)层实体确信数据来源正是所要求的对等(N+1)层实体。与对等实体认证不同,数据原发认证只对数据单元的来源提供确认,不考虑数据单元的重复或被篡改等问题。
2.3.2 访问控制
访问控制机制是用来实施对资源访问加以限制的策略的机制,这种策略把对资源的访问只限于那些被授权用户。通常利用一个包含被控制项与被授权用户(如人群或进程)的身份的访问控制列表或访问控制矩阵、口令,以及权力、标记或标志等手段实现访问控制。在使用权力的地方,权力应该是不可伪造的,而且用可靠的方式传递。
为了决定和实施一个实体的访问权,访问控制机制可以使用该实体已鉴别的身份,或使用有关该实体的信息(例如,它与一个已知的实体集的从属关系),或使用该实体的权力。如果这个实体试图使用非授权的资源,或者以不正当方式使用授权资源,那么访问控制功能将拒绝这一企图,另外,还可能产生一个报警信号或记录作为安全审计跟踪的一个部分来报告这一事件。对于无连接数据传输,发给发送者的拒绝访问的通知只能作为强加于原发的访问控制结果而被提供。
访问控制机制可利用的各种有效手段包括:
1)访问控制信息库,在这里保存有对等实体的访问权限。这些信息可以由授权中心保存,或由正被访问的那个实体保存。这种信息的形式可以是一个访问控制表,或者等级结构,或分布式结构的矩阵。还要预先假定对等实体的身份已得到保证。
2)鉴别信息,如口令。对这一信息的占有和出示便可证明正在进行访问的实体已被授权。
3)权力。对它的占有和出示便证明有权访问由该权力所规定的实体或资源。权力应是不可伪造的并以可信赖的方式进行传送。
4)安全标记。当与一个实体相关联时,这种安全标记可用来表示同意或拒绝访问,通常根据安全策略而定。
5)试图访问的时间。
6)试图访问的路由。
7)访问持续期。
访问控制机制可应用于通信联系中的一个端点,或应用于任一中间点。涉及原发点或任一中间点的访问控制是用来决定发送者是否被授权与指定的接收者进行通信,或是否被授权使用所要求的通信资源。
在无连接数据传输过程中,原发点必须事先知道目的端上的对等级访问控制机制的要求,同时,还需要将所要求内容记录在安全管理信息库中。
2.3.3 路由控制
传送数据的路由警告说明(包括一整条路径的说明)可以用来保证数据只在物理上安全的路由上传输,或保证敏感数据只在具有适当保护级别的路由上传输。
路由能动态地或预定地选取,以便只使用物理上安全的子网络、中继站或链路。在检测到持续的操作攻击时,端系统可希望指示网络服务提供者使用不同的路由建立连接。
带有某些安全标记的数据可能被安全策略禁止通过某些子网络、中继站或链路。连接的发起者(或无连接数据单元的发送者)可以指定路由选择说明,由它请求回避某些特定的子网络、链路或中继站。
2.3.4 数字签名
数字签名这一术语是用来指一种特别的技术,能够用它来提供诸如抗抵赖和认证等安全服务。数字签名机制一般采用非对称密码算法实现,利用它可以进行报文认证和用户身份认证,能够解决通信双方存在的纠纷。
数字签名机制需要确定两个过程:一个是对数据单元签名;另一个是验证签过名的数据单元。第一个过程使用签名者的私有(即独有的和机密的)信息进行签名;第二个过程中的所有规程和信息是公开的,但是不能够由它们推断出该签名者的私有信息。这个私有信息是被用来验证数据单元的。
签名过程涉及使用签名者的私有信息作为私钥,或对数据单元进行加密,或产生出该数据单元的一个密码校验值。验证过程涉及使用公开的规程和信息来决定该签名是不是用签名者的私有信息产生的。
签名机制的本质特征是:该签名只有使用签名者的私有信息才能产生出来。因而当该签名得到验证后,它能够在事后的任何时候向第三方(如法官或仲裁人)证明:只有那个私有信息的唯一拥有者才能产生这个签名。这意味着:
1)签过名的数据单元除了私有信息的占有者外,其他人是不能制造出来的。
2)接收者不可能造出那份签过名的数据单元。因此,只需要使用公开可用的信息就能够认定数据单元的签名者是谁。如果事后发生纠纷,就可以通过一个可靠的第三方来证明数据单元签名者的身份。
3)发送者不能否认发出过那个签过名的数据单元。在这种情况下,一个可信赖的第三方(仲裁人)能够向接收者证明该信息的来源和完整性。
另外,发送者可能要求接收者事后不能否认其接收过该签名的数据。这时,可以使用交付证明的抗抵赖服务来完成这个要求。其方法是将数字签名机制、数据完整性机制和公证机制适当地结合在一起使用。
2.3.5 交换认证
1.交换认证技术
交换认证机制可设置在网络的任何层上用以提供对等实体的认证。在认证实体时,如果这一机制得到否定的结果,则会导致连接的拒绝或终止,也可能使在安全审计跟踪中增加一条记录,或向安全管理中心提交一份报告。
可用于交换认证的技术包括:
1)使用鉴别信息,如口令,由发送实体提供而由接收实体验证;
2)密码技术;
3)使用该实体的特征或占有物。
当采用密码技术时,这些技术可以与“握手”协议结合起来以防止重演攻击。交换认证技术的选用取决于使用它们的环境。通常情况下,与下列各项结合使用:
1)时间标记与同步时钟;
2)两方握手和三方握手(分别对应于单向认证和双向认证);
3)由数字签名和公证机制实现的抗抵赖服务。
2.有数据原发证明的交换认证
这种交换认证为数据的接收者提供数据来源的证据。这使发送者谎称未发送过这些数据或否认它的内容的企图不能得逞。
3.有交付证明的交换认证
这种交换认证为数据的发送者提供数据交付证据。这使接收者事后谎称未收到过这些数据或否认它的内容的企图不能得逞。