1.单点登录这块怎么实现的?
1)解释下单点登录,Single Sign On(SSO),只需要登录一次,就可以访问所有信任的应用系统。
2)常见解决方案:JWT
- 用户访问其他系统,会在网关层判断token是否有效
- 如果token无效则会返回401表示认证失败,这时前端跳转到登录页面
- 用户发送登录请求,后端校验用户成功后返回给浏览器一个token,浏览器把token保存到cookie中
- 再去访问其他服务的时候,都需要携带token,由网关统一验证后路由到目标服务。
2、权限认证是如何实现的?
1)后台管理系统的开发经验
2)介绍RBAC权限模型5张表的关系(用户、角色、权限)
3)权限框架:Apache shiro、Spring security(推荐)
3、上传数据的 安全性你们怎么控制?
使用非对称加密或者对称加密:
1)对称加密:加密和解密使用相同的秘钥,即加密秘钥也可以作为解密秘钥。
- 优点:加密速度快,效率高
- 缺点:相对不太安全,容易破解,建议不要保存敏感信息
2)非对称加密:公开秘钥和私有秘钥两种,公开秘钥加密,私有秘钥解密
- 优点:与对称加密相比,安全性更高
- 缺点:加密和解密速度慢,建议少量数据加密
4、你负责项目的时候遇到了哪些比较棘手的问题?怎么解决的?
6、项目中使用过日志吗?怎么排查问题?
查看日志的命令:
- 实时监控日志的变化:tail -f
- 按照行号查找:tail -n 100
- 查询某一个日志的区间:cat -n | tail -n +100 | head -n 100 (查询100行至200行的日志)
- 按照关键字找日志的信息:cat -n |grep "debug"
- 分页查询日志信息:cat -n | grep "debug" |more
- 筛选过滤之后,输出到一个文件:cat -n |grep "debug" >