这篇文章主要介绍“Java的安全模块怎么设计”,在日常操作中,相信很多人在Java的安全模块怎么设计问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java的安全模块怎么设计”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
客户端的安全模块流程及伪码如下:
对在飞Q安全界面中,分为“安全概述”,“常见欺诈”,“修改密码”,“修改密保”; <1> 安全概述 安全概述 概述了你当前飞Q的安全状况 if (设置密保并且密码等级为良好以上) { 安全状况良好请继续保持良好的习惯 可立即完成设置密码 } else if (设置密保并且密码等级为中等以下) { 安全状况存在隐患请定期修改密码 立即完成设置密码 } else { 安全状况危险请立刻设置密保问题 立即完成设置密保 } <2> 常见欺诈 常见的集中欺诈方式:钓鱼网址,视频欺诈,中奖欺诈,冒充好友欺诈; <3> 修改密码 修改密码之前请确保设置密保; 如果没有设置密保问题,请先设置密保问题,以确保该账户的安全性。如果设置了密保问题,请先输入原密保问题,核对用户身份。密保正确才可以修改,如果错误,对不起,不能修改密码。 if(三个密保问题有空) { 对不起,密保问题回答不能为空! 没填写的须不完整 } else { 向服务器获取对应密保问题的答案 If(回答错误) { 提示:对不起,密保问题回答不能正确 全部清空,重新输入 } else { 修改密码 输入旧密码 if (输入的旧密码正确) { if (新密码为空) { 提示:密码不能为空 } else if (两次密码输入不一致) { 提示:两次密码输入不一致 } else if (两次密码输入一致并且不空) { 向服务器发送该账号的新密码 } } else { 提示:密码有误,请重新输入 } } } <4> 修改密保 如果没有设置密保问题,设置密保问题。 如果设置了密保问题,请先输入原密保问题,核对用户身份。密保正确才可以修改,如果错误,对不起,不能修改密保。 if(没有设置密保) { 选择密保问题回答 If(选择的密保问题重复) { 提示:选择的密保问题重复 重新选择密保问题 } Else if(修改密保时验证密保问题为空) { 提示:修改密保时验证密保问题为空 } Else { 服务器发送该账号的新密保问题和新密保问题对应的答案 } } else { 已经设置设置密保 向服务器获取对应密保问题的答案 输入密保问题答案(用户) If(回答错误) { 提示:对不起,密保问题回答不能正确 全部清空,重新输入 } else { 修改密保 选择密保问题回答 If(选择的密保问题重复) { 提示:选择的密保问题重复 重新选择密保问题 } Else if(修改密保时验证密保问题为空) { 提示:修改密保时验证密保问题为空 } Else { 服务器发送该账号的新密保问题和新密保问题对应的答案 } } }
流程图如下:
服务器的安全模块分为以下几个子模块:
设置密保模块
判断是否设置密保模块
判断密保答案是否正确模块
修改密保模块
修改密码模块
找回密码
服务器端的流程伪码如下:
1、设置密保模块 用户发送修改好友昵称信息包,服务器解析成基本数据,在数据库中找到该用户的的信息,将密保问题和答案写入该用户的数据库中,假如已有密保问题则转到重设密保模块 2、判断是否设置密保模块 用户发送请求后,服务器解析出数据,在数据库中找到该好友,查看该好友是否设置密保, If(设置了密保) { 返回密保问题 } Else if(没有设置密保) { 发送回去没有设置密保的标识 } 3、判断密保答案是否正确模块 用户发送给服务器密保答案信息,服务器解析出相应的数据,从数据库中查找该用户的信息,得到密保问题和答案,进行判断三个问题是否全部回答对 If(三个密保问题全回答对) { 向该用户客户端发送验证成功的消息 } Else(三个问题不全对或全不对) { 向该用户客户端发送验证失败信息 } 4、修改密保模块 这里说明一下,修改密保的模块是在验证密保答案正确的前提下才能进入的,所以此模块仅仅是覆盖掉该用户的,特此声明,呵呵,声明有点晚了。。 没有复杂逻辑判断,思路如下: 用户发送给服务器新密保信息,服务器解析出相应的数据,从数据库中查找该用户,在数据库中重写此人的密保问题和答案,然后子线程接收。 5、修改密码模块 声明如7.4所示,不再重复 思路如下: 用户发送给服务器新密码信息,服务器解析出相应的数据,从数据库中查找该用户,在数据库中重写此人的密码,同时将新设置的密码加入内存中用户密码hashmap中,然后子线程接收。 6、找回密码 找回密码其实和重设密保有什么相识的地方,都是先验证信息密保信息是否正确,然后根据正确与否做出相应的处理 用户发送请求后,服务器解析出数据,在数据库中找到该好友,查看该好友是否设置密保, If(设置了密保) { 返回密保问题 。。。 判断接受的密保答案是否正确 If(三个问题都回答正确) { 返回验证成功信息,通知客户端转入重设密码模块 } Else { 返回验证失败信息 } } Else if(没有设置密保) { 发送回去没有设置密保的标识,通知该用户由于没有设置密码,通过此方法不能找回密码。 }
服务器的安全模块各子模块流程图如下:
1、设置密保模块
2、判断是否设置密保模块
3、判断密保答案是否正确模块
4、修改密保模块
5、修改密码模块
6、找回密码
到此,关于“Java的安全模块怎么设计”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。