随着信息技术和网络技术的发展,特别是Internet的不断普及,如何防止信息不被非法截获和破坏,即有效维护网络信息的安全性,成为越来越多的人关注的焦点。作为新一代的操作系统的Windows
2000,可通过多种技术和手段来控制用户对资源的访问,提高网络的安全性,其中包括与活动目录(Active Directory)服务的集成、支持认证Windows 2000用户的Kerberos v5认证协议、提供了公钥基础设施PKI支持,用公钥证书对外部用户进行认证、使用加密文件系统EFS(Encrypting File
System)保护本地数据以、使用Internet协议安全IPSec(Internet Protocol security)来保证通过公有网络的通信的安全性,以及基于Windows 2000的安全应用开发的可扩展性等等。
1 活动目录技术
活动目录服务在Windows 2000信息安全和网络安全中具有重要作用,它是关于用户、硬件、应用和网络数据的存储中心,也存储用户的认证信息,以及用户使用某一资源的授权信息等。活动目录与Windows
2000的其他安全服务紧密集成,如Kerberos认证协议、公钥基础设施PKI、加密文件系统EFS、安全设置管理器和组策略等。
同Windows NT中的平面文件(flat-file)目录不同,Windows 2000活动目录采用了代表商业企业组织结构的分层目录结构来存储信息,这样可以简化管理,具有良好的可伸缩性。为了创建这种分层结构,同Windows采用文件和文件夹来组织本地资源的方法类似,活动目录使用域(domains)、组织单元OUs(Organizational Units)和对象来管理和使用网络资源。
一个域是网络对象,包括组织单元、用户账号、组和计算机等的集合,它们共享一个公共目录数据库,并组成活动目录中逻辑结构的核心单元。每个域中可能包含多个组织单元和用户(对象),这样更符合公司或企业的组织模式。
大的企业或组织可能包含多个域,这种情况下的域分层就称为域树(Domain Tree)。创建的第一个域为根(root)域,也称为父域,在其下面创建的域为子(child)域。为了支持更大的组织结构,多个域树连接起来可以组成森林(forest),在这种情况下,需要使用多个域控制器,活动目录就可以定时在多个域控制器之间复制信息,从而保持目录数据库信息的同步。
在域中,一个组织单元OU是把对象组织成逻辑管理组的容器,其中包括一个或多个对象,如用户账号、组、计算机、打印机、应用、文件共享或其他OU等。
一个对象包括一个独立个体,如特定的用户、计算机或硬件信息(属性),如一个用户的属性可能包括名字、电话号码和电子邮件等;一个计算机对象的属性可能包括计算机位置和指定哪些用户或组能够访问该计算机资源的存取控制列表ACL(Access Control List)等。通过域和OU的组织形式,系统就可以以集合的形式来管理对象的安全性,如用户组和计算机组等,而不需要对每个独立的用户和对象进行配置。
为了使用户登录一次而在整个网络中使用资源,即单次登录(single sign-on),Win2000支持域之间的信任关系。在域之间建立起相互认证的逻辑关系,允许计算机和用户只需在域树(甚至森林)中的任何一个域中进行身份认证,然后就可以在整个网络中使用经过授权的资源。
2 Kerberos认证
Kerberos认证协议定义了客户端和称为密钥分配中心KDC(Key Distribution Center)的认证服务之间的安全交互过程。Windows2000在每一个域控制器中应用KDC认证服务,其域同Kerberos中的realm功能类似,具体可参考RFC 1510协议。Windows2000中采用多种措施提供对Kerberos协议的支持:Kerberos客户端使用基于SSPI的Windows2000安全提供者,初始Kerberos认证同WinLogon的单次登录进行了集成,而Kerberos KDC也同运行在域控制器中的安全服务进行了集成,并使用活动目录作为用户和组的账号数据库。
Kerberos是基于共享密钥的认证协议,用户和密钥分配中心KDC都知道用户的口令,或从口令中单向产生的密钥,并定义了一套客户端、KDC和服务器之间获取和使用Kerberos票据的交换协议。当用户初始化Windows登录时,Kerberos SSP利用基于用户口令的加密散列获取一个初始Kerberos票据TGT,Windows2000把TGT存储在与用户的登录上下文相关的工作站的票据缓存中。当客户端想要使用网络服务时,Kerberos首先检查票据缓存中是否有该服务器的有效会话票据。如果没有,则向KDC发送TGT来请求一个会话票据,以请求服务器提供服务。
请求的会话票据也会存储在票据缓存中,以用于后续对同一个服务器的连接,直到票据超期为止。票据的有效期由域安全策略来规定,一般为8个小时。如果在会话过程中票据超期,
Kerberos SSP将返回一个响应的错误值,允许客户端和服务器刷新票据,产生一个新的会话密钥,并恢复连接。
使用Kerberos认证协议的客户端、KDC和应用服务器之间的关系:
在初始连接消息中,Kerberos把会话票据提交给远程服务,会话票据中的一部分使用了服务和KDC共享的密钥进行了加密。因为服务器端的Kerberos有服务器密钥的缓存拷贝,所以,服务器不需要到KDC进行认证,而直接可以通过验证会话票据来认证客户端。在服务器端,采用Kerberos认证系统的会话建立速度要比NTLM认证快得多,因为使用NTLM,服务器获取用户的信任书以后,还要与域控制器建立连接,来对用户进行重新认证。
Kerberos会话票据中包含有一个唯一的、由KDC创建的、用于客户端和服务器之间传输数据和认证信息加密的会话密钥。在Kerberos模型中,KDC是作为产生会话密钥的可信第三方而存在的,这种形式更适合于分布式计算环境下的认证服务。
Kerberos作为基本的Windows 2000认证协议,与Windows2000认证和存取控制安全框架进行了紧密整合。初始的Windows域登录由WinLogon提供,它使用Kerberos安全提供者(security provider)来获取一个初始的Kerberos票据。操作系统的其他组件,如转向器(Redirector)则使用安全提供者的SSPI接口来获取一个会话票据,以连接对远程文件存取的SMB服务器。
Kerberos V5协议在会话票据中定义了一个携带授权数据的加密域,该域的使用留给了应用开发,而Windows2000则使用Kerberos票据中的授权数据来附带代表用户和组成员的Windows安全ID。在服务器端的Kerberos安全提供者则使用授权数据来建立代表用户的一个Windows安全存取控制令牌,可以模拟客户端来请求提供相应服务。
Windows2000中应用了Kerberos协议的扩展,除共享密钥外,还支持基于公/私钥对的身份认证机制。Kerberos公钥认证的扩展允许客户端在请求一个初始TGT时使用私钥,而KDC则使用公钥来验证请求,该公钥是从存储在活动目录中用户对象的X.509证书中获取的。用户的证书可以由权威的第三方,如VeriSign和Digital IDs等来发放,也可以由Windows2000中的微软证书服务器来产生。初始认证以后,就可以使用标准的Kerberos来获取会话票据,并连接到相应的网络服务。
通过对Kerberos协议进行公钥扩展,可以使用户采用多种方式来登录工作站和网络,如采用智能卡技术。智能卡中一般存储有用户的私钥,可用于Kerberos的初始化认证处理。
目前,使用公钥技术来扩展Kerberos协议的计划和建议已经提交到IETF来进行标准化推广。
3 公钥基础设施PKI和认证机构CA
Windows 2000作为新推出的操作系统,对PKI做了全面支持。PKI在提供高强度安全性的同时,还与操作系统进行了紧密集成,并作为操作系统的一项基本服务而存在,避免了购买第三方PKI所带来的额外开销。组成Windows2000 PKI的基本逻辑组件中最核心的为微软证书服务系统(Microsoft Certificate Services),它允许用户配置一个或多个企业CA,这些CA支持证书的发放和废除,并与活动目录和策略配合,共同完成证书和废除信息的发布。
Windows 2000 PKI并没有替换掉基于域控制器DC (Domain Controller)和Kerberos密钥分配中心KDC的Windows NT 域信任和认证机制,相反,Windows 2000 PKI反而对这些服务进行了增强,适合于Extranet和Internet的不同应用,并可应用于具有可伸缩性和分布式环境下,提供身份识别、认证、完整性验证和机密性等安全服务。
Windows 2000 PKI建立在微软久经考验的PKI组件基础之上,其基本组件包括如下几种:
² 证书服务(Certificate Services)。证书服务作为一项核心的操作系统级服务,允许组织和企业建立自己的CA系统,并发布和管理数字证书。
² 活动目录。活动目录服务作为一项核心的操作系统级服务,提供了查找网络资源的唯一位置,在PKI中为证书和CRL等信息提供发布服务。
² 基于PKI的应用。Windows 本身提供了许多基于PKI的应用,如Internet Explorer、Microsoft
Money、Internet Information Server、Outlook和Outlook
Express等。另外,一些其它第三方PKI应用也同样可以建立在Windows 2000 PKI基础之上。
² Exchange密钥管理服务KMS(Exchange Key Management Service)。KMS是Microsoft Exchange提供的一项服务,允许应用存储和获取用于加密e-mail的密钥。在将来版本的Windows系统中,KMS将作为Windows操作系统的一部分来提供企业级的KMS服务。
Windows 2000中的集成PKI系统提供了证书服务功能,可以让用户通过Internet/ extranets/intranets安全地交互敏感信息。证书服务验证一个电子商务交易中参与各方的有效性和真实性,并使用智能卡等提供的额外安全措施来使域用户登录到某个域。
使用Kerberos认证协议的客户端、KDC和应用服务器之间的关系:
在初始连接消息中,Kerberos把会话票据提交给远程服务,会话票据中的一部分使用了服务和KDC共享的密钥进行了加密。因为服务器端的Kerberos有服务器密钥的缓存拷贝,所以,服务器不需要到KDC进行认证,而直接可以通过验证会话票据来认证客户端。在服务器端,采用Kerberos认证系统的会话建立速度要比NTLM认证快得多,因为使用NTLM,服务器获取用户的信任书以后,还要与域控制器建立连接,来对用户进行重新认证。
Kerberos会话票据中包含有一个唯一的、由KDC创建的、用于客户端和服务器之间传输数据和认证信息加密的会话密钥。在Kerberos模型中,KDC是作为产生会话密钥的可信第三方而存在的,这种形式更适合于分布式计算环境下的认证服务。
Kerberos作为基本的Windows 2000认证协议,与Windows2000认证和存取控制安全框架进行了紧密整合。初始的Windows域登录由WinLogon提供,它使用Kerberos安全提供者(security provider)来获取一个初始的Kerberos票据。操作系统的其他组件,如转向器(Redirector)则使用安全提供者的SSPI接口来获取一个会话票据,以连接对远程文件存取的SMB服务器。
Kerberos V5协议在会话票据中定义了一个携带授权数据的加密域,该域的使用留给了应用开发,而Windows2000则使用Kerberos票据中的授权数据来附带代表用户和组成员的Windows安全ID。在服务器端的Kerberos安全提供者则使用授权数据来建立代表用户的一个Windows安全存取控制令牌,可以模拟客户端来请求提供相应服务。
Windows2000中应用了Kerberos协议的扩展,除共享密钥外,还支持基于公/私钥对的身份认证机制。Kerberos公钥认证的扩展允许客户端在请求一个初始TGT时使用私钥,而KDC则使用公钥来验证请求,该公钥是从存储在活动目录中用户对象的X.509证书中获取的。用户的证书可以由权威的第三方,如VeriSign和Digital IDs等来发放,也可以由Windows2000中的微软证书服务器来产生。初始认证以后,就可以使用标准的Kerberos来获取会话票据,并连接到相应的网络服务。
通过对Kerberos协议进行公钥扩展,可以使用户采用多种方式来登录工作站和网络,如采用智能卡技术。智能卡中一般存储有用户的私钥,可用于Kerberos的初始化认证处理。
目前,使用公钥技术来扩展Kerberos协议的计划和建议已经提交到IETF来进行标准化推广。
3 公钥基础设施PKI和认证机构CA
Windows 2000作为新推出的操作系统,对PKI做了全面支持。PKI在提供高强度安全性的同时,还与操作系统进行了紧密集成,并作为操作系统的一项基本服务而存在,避免了购买第三方PKI所带来的额外开销。组成Windows2000 PKI的基本逻辑组件中最核心的为微软证书服务系统(Microsoft Certificate Services),它允许用户配置一个或多个企业CA,这些CA支持证书的发放和废除,并与活动目录和策略配合,共同完成证书和废除信息的发布。
Windows 2000 PKI并没有替换掉基于域控制器DC (Domain Controller)和Kerberos密钥分配中心KDC的Windows NT 域信任和认证机制,相反,Windows 2000 PKI反而对这些服务进行了增强,适合于Extranet和Internet的不同应用,并可应用于具有可伸缩性和分布式环境下,提供身份识别、认证、完整性验证和机密性等安全服务。
Windows 2000 PKI建立在微软久经考验的PKI组件基础之上,其基本组件包括如下几种:
² 证书服务(Certificate Services)。证书服务作为一项核心的操作系统级服务,允许组织和企业建立自己的CA系统,并发布和管理数字证书。
² 活动目录。活动目录服务作为一项核心的操作系统级服务,提供了查找网络资源的唯一位置,在PKI中为证书和CRL等信息提供发布服务。
² 基于PKI的应用。Windows 本身提供了许多基于PKI的应用,如Internet Explorer、Microsoft
Money、Internet Information Server、Outlook和Outlook
Express等。另外,一些其它第三方PKI应用也同样可以建立在Windows 2000 PKI基础之上。
² Exchange密钥管理服务KMS(Exchange Key Management Service)。KMS是Microsoft Exchange提供的一项服务,允许应用存储和获取用于加密e-mail的密钥。在将来版本的Windows系统中,KMS将作为Windows操作系统的一部分来提供企业级的KMS服务。
Windows 2000中的集成PKI系统提供了证书服务功能,可以让用户通过Internet/ extranets/intranets安全地交互敏感信息。证书服务验证一个电子商务交易中参与各方的有效性和真实性,并使用智能卡等提供的额外安全措施来使域用户登录到某个域。
使用Kerberos认证协议的客户端、KDC和应用服务器之间的关系:
在初始连接消息中,Kerberos把会话票据提交给远程服务,会话票据中的一部分使用了服务和KDC共享的密钥进行了加密。因为服务器端的Kerberos有服务器密钥的缓存拷贝,所以,服务器不需要到KDC进行认证,而直接可以通过验证会话票据来认证客户端。在服务器端,采用Kerberos认证系统的会话建立速度要比NTLM认证快得多,因为使用NTLM,服务器获取用户的信任书以后,还要与域控制器建立连接,来对用户进行重新认证。
Kerberos会话票据中包含有一个唯一的、由KDC创建的、用于客户端和服务器之间传输数据和认证信息加密的会话密钥。在Kerberos模型中,KDC是作为产生会话密钥的可信第三方而存在的,这种形式更适合于分布式计算环境下的认证服务。
Kerberos作为基本的Windows 2000认证协议,与Windows2000认证和存取控制安全框架进行了紧密整合。初始的Windows域登录由WinLogon提供,它使用Kerberos安全提供者(security provider)来获取一个初始的Kerberos票据。操作系统的其他组件,如转向器(Redirector)则使用安全提供者的SSPI接口来获取一个会话票据,以连接对远程文件存取的SMB服务器。
Kerberos V5协议在会话票据中定义了一个携带授权数据的加密域,该域的使用留给了应用开发,而Windows2000则使用Kerberos票据中的授权数据来附带代表用户和组成员的Windows安全ID。在服务器端的Kerberos安全提供者则使用授权数据来建立代表用户的一个Windows安全存取控制令牌,可以模拟客户端来请求提供相应服务。
Windows2000中应用了Kerberos协议的扩展,除共享密钥外,还支持基于公/私钥对的身份认证机制。Kerberos公钥认证的扩展允许客户端在请求一个初始TGT时使用私钥,而KDC则使用公钥来验证请求,该公钥是从存储在活动目录中用户对象的X.509证书中获取的。用户的证书可以由权威的第三方,如VeriSign和Digital IDs等来发放,也可以由Windows2000中的微软证书服务器来产生。初始认证以后,就可以使用标准的Kerberos来获取会话票据,并连接到相应的网络服务。
通过对Kerberos协议进行公钥扩展,可以使用户采用多种方式来登录工作站和网络,如采用智能卡技术。智能卡中一般存储有用户的私钥,可用于Kerberos的初始化认证处理。
目前,使用公钥技术来扩展Kerberos协议的计划和建议已经提交到IETF来进行标准化推广。
3 公钥基础设施PKI和认证机构CA
Windows 2000作为新推出的操作系统,对PKI做了全面支持。PKI在提供高强度安全性的同时,还与操作系统进行了紧密集成,并作为操作系统的一项基本服务而存在,避免了购买第三方PKI所带来的额外开销。组成Windows2000 PKI的基本逻辑组件中最核心的为微软证书服务系统(Microsoft Certificate Services),它允许用户配置一个或多个企业CA,这些CA支持证书的发放和废除,并与活动目录和策略配合,共同完成证书和废除信息的发布。
Windows 2000 PKI并没有替换掉基于域控制器DC (Domain Controller)和Kerberos密钥分配中心KDC的Windows NT 域信任和认证机制,相反,Windows 2000 PKI反而对这些服务进行了增强,适合于Extranet和Internet的不同应用,并可应用于具有可伸缩性和分布式环境下,提供身份识别、认证、完整性验证和机密性等安全服务。
Windows 2000 PKI建立在微软久经考验的PKI组件基础之上,其基本组件包括如下几种:
² 证书服务(Certificate Services)。证书服务作为一项核心的操作系统级服务,允许组织和企业建立自己的CA系统,并发布和管理数字证书。
² 活动目录。活动目录服务作为一项核心的操作系统级服务,提供了查找网络资源的唯一位置,在PKI中为证书和CRL等信息提供发布服务。
² 基于PKI的应用。Windows 本身提供了许多基于PKI的应用,如Internet Explorer、Microsoft
Money、Internet Information Server、Outlook和Outlook
Express等。另外,一些其它第三方PKI应用也同样可以建立在Windows 2000 PKI基础之上。
² Exchange密钥管理服务KMS(Exchange Key Management Service)。KMS是Microsoft Exchange提供的一项服务,允许应用存储和获取用于加密e-mail的密钥。在将来版本的Windows系统中,KMS将作为Windows操作系统的一部分来提供企业级的KMS服务。
Windows 2000中的集成PKI系统提供了证书服务功能,可以让用户通过Internet/ extranets/intranets安全地交互敏感信息。证书服务验证一个电子商务交易中参与各方的有效性和真实性,并使用智能卡等提供的额外安全措施来使域用户登录到某个域。