团队作业(五):冲刺七
团队作业(五):Srcum冲刺总结7
开发环境说明
-
Java开发环境
eclipse-jee-2021-09-R-linux-gtk-x86_64- 安装位置
路径:file:///home/ljf/eclipse
- 安装位置
-
数据库
dbeaver-ce-21.3.0-linux.gtk.x86_64-nojdk(开源图形化界面数据库)- 安装位置
路径:file:///home/ljf/dbeaver
mysql-8.0.27-linux-glibc2.12-x86_64
- 安装位置
路径:file:///usr/local/mysql
- 安装位置
-
jdk
jdk-17_linux-x64_bin- 安装位置
路径:file:///usr/local/java
- 安装位置
-
Apache
apache-tomcat-9.0.55- 安装位置
路径:file:///home/ljf/tomcat9
- 安装位置
eDocTrans系统展示
-
在openEuler虚拟机中启动eclipse,将eDocTrans项目运行在tomcat服务器上,网站根目录地址为
http://192.168.144.139:8080/eDocTrans
在win10主机中打开浏览器访问该地址,进入网站首页面
-
点击“去注册”
-
用户密码使用OpenSSL中SM3哈希算法进行摘要运算,数据库不存储明态密码
-
重复注册
防止机器人(脚本)恶意注册该系统账号,注册界面设置了验证码
-
注册成功后(自动跳转)进入登录界面
-
输入密码错误,提示报错
-
通过登录验证后,进入网站首页
-
点击功能列表中的“发送公文”,进入发送公文页面
-
发送成功后可以在服务器中看到SM4加密后的密文,服务器中不存储明文,上传到服务器的文件均经过OpenSSL调用SM4算法进行加密(调用的OpenSSL使用SM4 -K -iv选项进行加密),
-
点击收件箱,进入收件箱页面
-
点击文件右侧“下载”,下载的文件是服务器调用OpenSSL使用SM4解密后的文件
-
1个文件未读的提示消失
-
点击“退出系统”,java_servlet将URL重定向回登录界面
-
以admin身份登录,点击“公文共享”,进入公文共享页面
-
点击“下载”,下载文件
-
点击“删除”,删除了文件
服务器中对应存储的文件和文件夹也被删除
点击用户授权,进入用户授权页面
授权成功后,查看数据库,可以看到授权成功
项目亮点
- 服务器端在OpenEuler上部署,适用于今后移植于国产操作系统。
- 设置公文共享功能,所有高权限用户可以看到小于等于自身等级的所有文件记录,并进行下载,方便工作。
- 初始用户注册均默认为
Level 0
用户,即只能查看无密级文件,进行权限控制。如需要提权必须通过管理员验证,向管理员点对点提供对应证明资质和材料后才能进行相应提权。 - 采用B/S架构,客户端只需通过在浏览器访问服务器IP,进入/eDocTrans目录即可使用系统,操作方便。
- 服务器端脚本中Crypto部分调用了OpenSSL中的SM3哈希算法对用户的密码进行摘要计算,调用了OpenSSL中的SM4算法对上传到服务器的文件进行加密,用户下载文件时再通过SM4算法对该文件进行解密,保证服务器端不存明文,具有一定安全性。
- 项目设置了过滤功能,即用户不能直接通过在浏览器地址栏中增添路径达到非法操作,仅能通过点击系统中对应模块进行跳转(java doGet()方法实现地址栏跳转)
局限和问题
- 项目基于B/S架构,较难实现公私钥加密,仅仅实现了对称密钥进行加解密