先简单介绍一下我的毕业设计题目吧:
题目:局域网安全监控
主要功能:
设置单服务器和多客户端,敏感文件都放在服务器端,通过服务器端来设置文件的被访问的权限,同时服务器端也能够列表出所有的日志信息,客户端负责将监控到的对敏感文件的操作日志传送到服务器端保存入数据库。
基于安全考虑,服务器端提供给客户端各种方法的接口,而客户端在尽量精简自己代码的同时,能够满足在客户端和服务器端没有联系的时候也能够将监控任务执行下去,为了达到这个效果,我考虑在客户端设置一个敏感文件(受到监控的那些文件)列表,用来保存被监控的对象。
为了简化,服务器端对局域网上的用户进行分组,同时对于敏感文件的管理通过目录层次来管理,即某个组的用户能够访问到某个目录里面的文件,而不能访问到其他目录的文件,而不是针对某个具体的用户给与权限分配,也就是说,对于一个用户组,至少对应一个文件夹。
整个对监控的文件的监控是从敏感文件从服务器拷贝到某客户端后开始,直到该文件被删除或者被管理员设置成为非敏感数据后终止。如果文件被复制成多份,或者改了名字,那么将在客户端的文件监控列表中对这些衍生的文件进行关联,考虑将列表设置成xml文件进行操纵。
对于移动设备的控制,即可能将敏感文件传出去的通道,暂时就只考虑对u盘的监控,我臆想到u盘的使用也是有一个线程,那么可以通过对这个线程的控制来达到对u盘的监控。
本来还有考虑对邮件的监控,考虑到时间和可能的技术实现,如果毕业设计还有二期的话,那再实现。:)
现在考虑到的程序架构:
LAN解决方案------PublicLib 项目:公用的方法,如对数据库访问,错误日志记录等,
-------LANServerLib项目:提供对客户端的接口,以及类的声明
-------LANServer项目:提供对接口的转向及类的实现,同时同步客户端敏感文件定义
-------LANClient项目(Windows Service程序):调用服务器的方法和自己的一些方法实现监控,将数据返回服务器端
考虑实现可能要用到的技术:
关键的是程序的架构,考虑使用Remoting技术,另外可能用到的一些有
API调用
注册表的操纵(config等信息的保存)
获取客户端机器的相关信息(mac ip )
Windows Service编程
等等,反正很多我都是从0开始,现在贴出来,请大家帮忙出谋划策!
有很多地方的想法都是没有依据的或者说是很幼稚和不成熟的,请大家批评指正。
感谢能够有这么个地方找人帮忙。
如果有同样是做毕业设计而题目差不多的朋友请联系我,大家讨论共同进步。
附我的联系方式:Email: idomind@126.com
MSN: pig8_15@hotmail.com
QQ: 27695852
第一次发到首页,也是第一篇post,在我潜水了4个月之后,还请dudu大人鼠标下留情。
另外附录我的数据库设计(SQL Server 2000):undefined