-
Notifications
You must be signed in to change notification settings - Fork 0
1 需求分析
hurley edited this page Apr 27, 2019
·
1 revision
- 项目来源:2019 深度软件开发大赛
- 项目名称:文件管控客户端
- deepin Linux x86_64 系统,理论上也兼容其他 x86_64 Linux 系统
- 区分服务端与客户端,一般运行在不同的机器上
- 正式的运行环境是N(N>=2)台计算机节点,通过有线或者无线互联,且运行服务端机器有客户端机器能直连的IP地址
- 监视和记录指定目录下文件的打开和关闭动作(文件系统事件),并上报服务端(文件路径、文件句柄、操作方式等)
- 配置了指定的监视服务器情况下,可接受服务端下发的文件操作指令,包括不限于读取、删除、重写等
- 当监视服务器关闭或者网络不通时,客户端拒绝任何操作,不允许任何人打开文件(拒绝监视目录的一切文件操作)
- 监视服务器不存在或者未配置时,记录相关的操作到日志文件,监视服务器可以查询历史操作日志
通过阅读题目中的“基本场景故事”,可以得知,这个客户端工具并不仅仅是监听文件系统事件并上报的功能,而是有权限对文件操作进行过滤、上报甚至拒绝的“保险箱”工具。所以需要考虑具体的实现方式,另外相关模块的设计和实现需要考虑到比较多的安全问题
- 文件系统操作监听和操作审计的功能,概要/详细设计中需要评估用户态还是内核态实现
- 客户端和服务端通信的功能,用于包括相关的事件上报以及执行服务端下发的指令等
- 7x24 小时运行,可随时重启,能自动恢复服务