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

单点登录这块怎么实现的

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

JWT解决单点登录

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

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

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

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

权限认证是如何实现的

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

具体实现

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

权限框架:

Apache shiro 、 Spring security(推荐)

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

对称加密

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

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

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

非对称加密

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

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

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

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

相关推荐
Java小白程序员20 分钟前
Spring Framework :IoC 容器的原理与实践
java·后端·spring
xuTao6671 小时前
Easy Rules 规则引擎详解
java·easy rules
DjangoJason1 小时前
C++ 仿RabbitMQ实现消息队列项目
开发语言·c++·rabbitmq
m0_480502642 小时前
Rust 入门 KV存储HashMap (十七)
java·开发语言·rust
大阳1232 小时前
线程(基本概念和相关命令)
开发语言·数据结构·经验分享·算法·线程·学习经验
杨DaB2 小时前
【SpringBoot】Swagger 接口工具
java·spring boot·后端·restful·swagger
YA3332 小时前
java基础(九)sql基础及索引
java·开发语言·sql
桦说编程2 小时前
方法一定要有返回值 \ o /
java·后端·函数式编程
小李是个程序3 小时前
登录与登录校验:Web安全核心解析
java·spring·web安全·jwt·cookie
奇树谦3 小时前
QT|windwos桌面端应用程序开发,当连接多个显示器的时候,如何获取屏幕编号?
开发语言·qt