AD RMS的实现原理

1.服务的发现

服务的发现实际上是RMS客户端发现AD RMS服务器的一个过程,该过程可以通过两种方法来实现,一是通过活动目录中的服务连接点(SCP),找到企业中的证书服务器的位置;二是通过注册表。

找到AD RMS服务可以激活RMS客户端,因为如果要使用该RMS客户端,则必须在第1次使用时到AD RMS服务器激活该RMS客户端,可以从AD RMS服务器上获取权限管理账户证书等信息。

2.文档的在线发布过程

由RMS客户端在线向授权服务器发送请求,发布过程如下。

(1)由密码箱生成对称密钥作为内容密钥。

(2)内容密钥会被授权服务器的公钥加密,目的是通过网络将其发送给授权服务器。然后授权服务器能够用自己的私钥将这个内容解出,而在传送的过程中不会被他人截获后获取内容密钥。

(3)加密的内容密钥和权限被发送给请求发布许可的授权服务器。

(4)授权服务器使用其私钥解开加密的内容密钥。

(5)授权服务器使用其公钥加密内容密钥和使用权限。

(6)加密后的密钥和使用权限被添加到发布许可中。

(7)授权服务器使用私钥签署发布许可。

(8)发布许可返回给申请的客户端。

(9)支持AD RMS的应用程序将发布许可合并到受保护的文档中。

3.文档的离线发布过程

如果用户所使用的是笔记本电脑等移动办公等的计算机设备,有可能在自己的家中不能够连接到公司的AD RMS服务器。为访问使用由AD RMS创建的文档,需要一个客户端许可证书(CLC)。保护过程如下:

(1)由密码箱生成对称密钥作为内容密钥。

(2)客户端从客户端许可证书中取出授权服务器的公钥。

(3)客户端使用服务器的公钥加密内容密钥,加密的内容密钥只能由服务器的私钥所解密。

(4)客户端使用客户端许可证书的公钥对内容密钥再进行一次加密,从而再次获得一个加密后的对称密钥。需要注意的是,在离线和在线发布不同是离线发布过程中对内容进行了两次加密。

(5)两个加密后的对称密钥同时被放到发布许可中。

(6)客户端使用权限账户证书中的私钥解密客户端许可证书中的私钥。

(7)客户端使用CLC的私钥签署发布许可。

(8)支持AD RMS的应用程序将发布许可合到受保护的文档中。

4.受保护文档的使用过程

使用受保护文档的具体过程如下。

(1)客户端将权限账户证书和文档的发布许可发送到颁发发布许可的授权服务器。

(2)授权服务器使用其私钥解出发布许可中的内容密钥。

(3)授权服务器使用权限账户证书中用户的公钥加密内容密钥。

(4)把加密的内容密钥和用户的使用权限添加到使用许可中。

(5)授权服务器使用其私钥签署使用许可。

(6)作为响应,将该使用许可发送给客户端。

(7)密码箱使用计算机的私钥解密保存在权限账户证书中和用户私钥。

(8)密码箱使用用户的私钥解密内容密钥。

(9)密码箱使用内容密钥解密被加密的受保护内容。

使用服务器的公钥所加密的内容只能由服务器的私钥来解开。

(7)服务器将用户的密钥对存储到AD RMS的数据库中,该权限账户证书就是以后该用户进行申请各种使用许可的证书。