微软文档权限管理(RMS)方案分析

时间:2022-06-01 12:55:54

转自:http://youmiss.blog.163.com/blog/static/218865920061190306660/


微软文档权限管理(RMS)方案分析

 

 

针对现有企业对文档管理方面的信息安全要求,微软公司于2005年推出了居于windows server2003的文档权限管理解决方案(Right Management Server Solution)。本文从应用的角度分析了该方案的工作原理及实现的方法,并针对国内*部门及其它对文档信息安全有着较高要求的企业提出了该方案存在的问题,并参考该解决方案提出了可能的解决办法。

一、    RMS的工作原理

 

由于社会、经济的发展,面对着竞争的加剧,现代企业在运作过程中将会产生大量的文档,所以对文档管理就要求变得越来越高。比如机密文档的安全存放、敏感文档只能由相关人员查看、文档的有效时间及给予不同权限的人对文档不同的操作权限(只读、修改、打印和复制等)、不会由人员的流动导致信息的泄露。针对这些问题微软提出了RMS文档权限管理解决方案。

1、             RMS所使用的技术

 

RMS是采用对文档加密的方式来实现权限的管理的。所有文档都经过对称加密,所采用的算法是ASE对称加密算法,其存放在储存介质上都是用密文的方式存放。这样就把文档的权限管理转变成了对密钥的管理,其对密钥的管理所采用的是XrML标准,其中用到了公钥加密及数字签名技术,采用的算法RSA算法。整个系统运行在windows 活动目录域内(DC),所有用户和计算的验证都由DC完成。另RMS和办工软件OA接合起来可以构建文档权限及流程管理系统(MDMS)MDMSRMS结合SharePiont经过二次开发来完成,微软中国有限公司在今年3月份发布了MDMS的半成品。

2、             RMS的工作方式

 

RMS的工作由RMS服务器和已经获得证书的用户和计算机完成。其工作方式如图大致分为四个步骤。

1)                文档创建后连同权限设置的信息使用对称加密生成密文,然后把对称密码的密钥联同主体信息向服务器发送申请发布许可。网络传输的数据都采用密文传输。

2)                服务器经过身份验证后返回给作者发部许可。

3)                使用者得到文档后向服务器申请使用许可。

4)                使用者得到许可后,解密文档并根据相应的权限使用文档。

二、    RMS的实现方法

1、             RMS的组件

RMS的工作组件包括RMS服务器端、RMS客户端和支持RMS应用程序软件。

1) RMS服务器端包括证书服务器和许可服务器。整个RMS系统工作在windows活动目录域上(DC),所有对用户和计算机的认证都是通过活动目录域服务器完成。证书服务器通过DC给用户及计算机颁发证书,许可服务器通过DC及证书服务器给文档颁发许可。用户证书包括可信任主体、一对密钥对和服务器签名,其中用户的私钥是用计算机的公钥加密的,所以用户证书是和特定计算机相关联的。计算机证书也有一对密钥对,私钥是存储在计算机密码箱中的。

2) RMS客户端包括计算机密码箱和计算机证书,其中密码箱中存储着计算机证书的私钥同时完成生成对称密钥的功能。客户端提供给RMS应用程序软件提供加密解密服务和向服务器申请许可的功能。

3) RMS应用程序软件根据特定文档的RMS权限给授予特定用户相应的文档操作权限。包括文档只读、修改、转发和打印等权限,目前支持RMS应用的软件只有MS Office2003

2、             RMS文档的发布过程

根证书服务器同时具备证书服务和许可服务两种角色。根证书服务器首先生成自己的密钥对,并且需要向微软的服务器注册。当有用户或计算机向服务器发出RMS请求时,服务器给用户或计算机颁发证书。

当用户创建文档并添加权限后,由计算密码箱生成对称密钥对文档加密然后向服务器申请文档发布许可,许可服务器给文档颁发发布许可。发布许可的内容包括用服务器公钥加密的权限和对主体的签名。应用程序得到发布许可后和加密文档整合后通过各种渠道发送给使用者。使用者接收到文档后则向服务器申请使用许可,使用许包括使用主体的说明和对文档解密的对称密钥同时还具有签名。应用程序软件得到使用许可后对文档进行解密并根据文档权限给予用户相应的使用操作权限。

三、    RMS应用存在的问题

RMS只能针对一般对文档安全程度要求不高的企业具有可行性,对于*部门或者一些相应的军工企业其可行性还存在着一些问题,具体表现如下:

1、如果需要使用微软的RMS则必须要向微软的服务器注册,虽然其声称只是用证书服务器的公钥注册但难于保证服务器所生成的密钥对是否留有后门。即所选用的密钥对既符合RES算法又可以通过特定的公式由公钥推导出私钥来。

2、所有身份验证都是通过活动目录域完成的,而DC的验证只需要提供用户和密码,在X.509标准中属于弱安全认证方式,安全级别相对较抵。

3、密码箱存储在计算内,有可能通过调试工具找出计算机私钥来。另计算机私钥可以对任何的文档进行加密和签名,由于采用的是RES算法,则有可能通过选择明文攻击方法破解计算密钥对。

4、目前针对不同的文档权限保护相应的应用程序支持程度较弱(支持RMS的只有MS Office2003),功能也相较为单一,如不能支持不用用户对文档的不同部份的权限管理。同时业界也缺乏相应的标准,使得每一种应用程序都要针对不同的权限管理系统做一次二次开发。

四、    可行的解决方法

现在电子政务对信息安全的要求非常高,由于安全的原因所使用的office工具大多为WPS,但WPS的权限服务又必须通过internet上的服务认证使用,而*部门又要求内网与外网物理隔离,所以WPS也不能满足要求。 企业的OAERP系统都存在着大量的文档权限保护要求,所以有必要考虑采取一种新的文档权限管理解决方案。

1、架设自己的权限管理服务器可以避免使用微软RMS系统所需要的注册。

2、采用IC卡加用户口令的身份认证方式。密码箱存储在IC卡内,密钥的生成也由IC卡计算完成、同时IC卡可与工作证集成为一体,计算机采用读卡器识别。

3、只针对不同用户的签名采用不同的杂凑密钥进行数字签名,防止通过选择明文攻击方法破解IC卡内密钥对。

4、文档权限管理的,应用软件接口标准尽早出台。使不用应用软件的开发商可以遵循统一的标准开发权限管理功能。