基本信息
用户单位:某应用软件研发企业
用户规模:200人以上
组织过程水平:中等
CMMI评审等级:无
Subversion使用时间:2年
客户需求
由于公司的客户为军工企业,相关资料(主要是设计文档等技术资料)对保密具有较高的要求,具体到实际的使用需求就是Subversion版本库中的部分内容(以MS Office文档为主)在被开发人员调阅的时候只能被其读,但不允许以任何方式复制文档的任何内容!
问题解析
Subversion本身提供的所谓“读”权限只能提供对“检出”的控制,如果授予“读”的权限就意味着用户可以将被授权的文件检出或导出(下载)到本地,因此用Subversion本身的“读”权限显然是无法满足客户要求的。
通过分析,可以将客户的需求归纳为以下几点:
a、需增加额外的“浏览”权限控制
b、用户不能用Office程序直接阅读文档(因为可以被保存和复制)
c、阅读的时候需要屏蔽包括拷屏在内的一切复制手段
我们的解决方案
我们所提供的解决方案如下图所示:
如上图所示:首先,系统提供了独立于读、写等权限以外的“调阅”权限设置。当用户对相关文档提出“调阅”请求后,系统会根据用户的相关授权信息(包括项目、用户及角色等相关授权信息)对验证请求进行核准,被核准通过的验证会在服务器端将相关文件检出一个临时的工作拷贝,然后在客户端通过ActiveX控件进行调阅。
由于客户端在调阅的时候是通过ActiveX控件使用浏览器实现的远程调阅,相关的文档在客户端本地并没有保存任何拷贝,而ActiveX控件本身屏蔽了所有复制及保存的功能(包括拷屏),因此用户在客户端只能浏览而不能进行任何其他操作。