开放平台:用户服务
首页 专栏 springboot 文章详情
0

开放平台:用户服务

吃水果毫不费力zz 发布于 3 月 7 日

背景
用户服务是对使用gateway的客户进行管理的服务,想使用gateway的用户通过门户网站进行注册,登陆之后申请API进行测试调用。

用户服务包括以下几个功能:

个人用户相关:个人用户注册,登录,注销

机构用户相关:

管理端录入用户-发送激活验证码-用户去激活画面凭借手机号和机构号激活,激活的同时生成密钥对和appSecret。 登录 申请API 查看api调用情况 查看AppSecret,上传机构公钥,下载平台公钥 内网用户相关:管理端录入并激活,没有密钥对,只有appSecret

机构用户状态转移图:

已录入2(发送激活短信,修改用户信息,销户)-待激活3(可发送激活验证码,修改用户信息,销户)-已激活1(修改用户信息,销户,修改密码,登陆)-已销户0。不同的状态对应机构和管理员可进行不同的操作。
在信息录入的时候,需要进行的校验:密码强度;机构号格式;手机号格式;用户名格式;邮箱格式。

用户服务涉及敏感性息,应避免用户密码被泄漏,因此关于安全性考虑如下:

用户在注册、登录等需要传输密码的场合,密码均加密传输 密码在数据库中加密保存 设置密码时,检查密码强度,至少六位数字及大小写字母的组合 用户1分钟内登录失败5次及以上就锁定用户,24小时内无法再次登录,避免用户名泄漏后被暴力破解 用户在登录时,增加图片验证码。图片验证码使用后即失效 机构用户激活/用户找回密码时使用到手机验证码,手机验证码有效期为5分钟,每分钟最多发一次,输错5次即失效 如果用户名或密码错误,弹出“用户名或密码”错误,而不是“用户名不存在”,“密码错误”等提示信息,避免枚举用户名或机构号

技术细节的实现:

密码加密传输 密码在数据库中加密保存 图片验证码 手机验证码的有效期和发送次数
springboot 安全防护
阅读 26 发布于 3 月 7 日
收藏
分享
本作品系原创, 采用《署名-非商业性使用-禁止演绎 4.0 国际》许可协议
java开发
记录java学习与总结
关注专栏
avatar
吃水果毫不费力zz

啦啦啦

4 声望
0 粉丝
关注作者
0 条评论
得票 时间
提交评论
avatar
吃水果毫不费力zz

啦啦啦

4 声望
0 粉丝
关注作者
宣传栏
目录

背景
用户服务是对使用gateway的客户进行管理的服务,想使用gateway的用户通过门户网站进行注册,登陆之后申请API进行测试调用。

用户服务包括以下几个功能:

个人用户相关:个人用户注册,登录,注销

机构用户相关:

管理端录入用户-发送激活验证码-用户去激活画面凭借手机号和机构号激活,激活的同时生成密钥对和appSecret。 登录 申请API 查看api调用情况 查看AppSecret,上传机构公钥,下载平台公钥 内网用户相关:管理端录入并激活,没有密钥对,只有appSecret

机构用户状态转移图:

已录入2(发送激活短信,修改用户信息,销户)-待激活3(可发送激活验证码,修改用户信息,销户)-已激活1(修改用户信息,销户,修改密码,登陆)-已销户0。不同的状态对应机构和管理员可进行不同的操作。
在信息录入的时候,需要进行的校验:密码强度;机构号格式;手机号格式;用户名格式;邮箱格式。

用户服务涉及敏感性息,应避免用户密码被泄漏,因此关于安全性考虑如下:

用户在注册、登录等需要传输密码的场合,密码均加密传输 密码在数据库中加密保存 设置密码时,检查密码强度,至少六位数字及大小写字母的组合 用户1分钟内登录失败5次及以上就锁定用户,24小时内无法再次登录,避免用户名泄漏后被暴力破解 用户在登录时,增加图片验证码。图片验证码使用后即失效 机构用户激活/用户找回密码时使用到手机验证码,手机验证码有效期为5分钟,每分钟最多发一次,输错5次即失效 如果用户名或密码错误,弹出“用户名或密码”错误,而不是“用户名不存在”,“密码错误”等提示信息,避免枚举用户名或机构号

技术细节的实现:

密码加密传输 密码在数据库中加密保存 图片验证码 手机验证码的有效期和发送次数