Java后端开发面试题——企业场景篇

单点登录这块怎么实现的

单点登录的英文名叫做:Single Sign On(简称SSO),只需要登录一次,就可以访问所有信任的应用系统

JWT解决单点登录

用户访问其他系统,会在网关判断token是否有效

如果token无效则会返回401(认证失败)前端跳转到登录页面

用户发送登录请求,返回浏览器一个token,浏览器把token保存到cookie

再去访问其他服务的时候,都需要携带token,由网关统一验证后路由到目标服务

权限认证是如何实现的

3个基础部分组成:++用户、角色、权限++

具体实现

5张表(用户表、角色表、权限表、用户角色中间表、角色权限中间表)

权限框架:

Apache shiro 、 Spring security(推荐)

上传数据的安全性你们怎么控制?

对称加密

文件加密和解密使用相同的密钥,即加密密钥也可以用作解密密钥

优点:加密速度快,效率高

缺点:相对不太安全(不要保存敏感信息)

非对称加密

两个密钥:公开密钥(publickey)和私有密钥,公有密钥加密,私有密钥解密

优点:与对称加密相比,安全性更高

缺点:加密和解密速度慢,建议少量数据加密

你负责项目的时候遇到了哪些比较棘手的问题?怎么解决的

相关推荐
考虑考虑9 小时前
JDK25模块导入声明
java·后端·java ee
_小马快跑_11 小时前
Java 的 8 大基本数据类型:为何是不可或缺的设计?
java
Re_zero13 小时前
线上日志被清空?这段仅10行的 IO 代码里竟然藏着3个毒瘤
java·后端
洋洋技术笔记13 小时前
Spring Boot条件注解详解
java·spring boot
程序员清风1 天前
程序员兼职必看:靠谱软件外包平台挑选指南与避坑清单!
java·后端·面试
皮皮林5511 天前
利用闲置 Mac 从零部署 OpenClaw 教程 !
java
华仔啊2 天前
挖到了 1 个 Java 小特性:var,用完就回不去了
java·后端
SimonKing2 天前
SpringBoot整合秘笈:让Mybatis用上Calcite,实现统一SQL查询
java·后端·程序员
日月云棠2 天前
各版本JDK对比:JDK 25 特性详解
java
用户8307196840822 天前
Spring Boot 项目中日期处理的最佳实践
java·spring boot