当前位置: 首页 > news >正文

【面试集锦】如何设计SSO方案?和OAuth有什么区别?

如何设计SSO方案?和OAuth有什么区别?

--楼兰

带你聊最纯粹的Java

​ 如果面试问你,你会做一个权限系统吗?那你肯定会说做过。不就是各种登录、验证吗。我做的第一个CRUD应用就是注册、登录。简单!但是,如果问你在工作中真的做过权限系统吗?其实很多人都只能默默摇摇头。因为在很多真实项目中,权限系统可能不是最复杂的,但一定是牵连最广的。因此往往大型项目中真正去做权限系统的,都只是非常核心的一小部分人。而如果你的应用越来越复杂,作为安全门户的权限系统也会随着变得更加复杂。各种方案层出不穷。比如, 把SSO和OAuth这两个聊的最多的名词放到一起,你真的分清楚吗?


一、SSO与OAuth


​ 首先你要清楚, SSO和OAuth都是分布式场景下比较常见的权限认证方案。然后,这两个方案,在项目落地时,很多项目都会用SpringSecurity这一类的权限框架实现。所以,这两东西他们其实很像,但本质上,他们完全是两个不同的方案,解决不同的问题。

​ SSO是Single Sign-On,单点登录。主打的是统一。允许用户通过一次登录访问多个相互信任的系统,无需重复输入凭证。比如,你登录了淘宝后,访问天猫,自然也是登录的状态。而如果在淘宝退出登录后,访问天猫也同时退出登录了。

​ OAuth是Open Authorization,开放授权。主打的是开放。允许用户注册的一个账号,可以用来登录多个不同的平台。他们有很多本质的区别。比如,你可以用一个微信账号

相关文章:

  • Open FPV VTX开源之OSD使用分类
  • 腿足机器人之二- 运动控制概览
  • Java NIO ByteBuffer 详解
  • 如何在Vscode中接入Deepseek
  • 【GIS】本地部署nominatim地理编码服务
  • TOML介绍
  • 范畴论与AGI知识表示:构建认知世界的数学基础
  • 尚硅谷爬虫note001
  • 《只狼》运行时提示“mfc140u.dll文件缺失”是什么原因?要怎么解决?
  • Xcode证书密钥导入
  • VS Code 通知中一直显示“Reactivating terminals...”的问题解决
  • 论文概览 |《Cities》2024.12 Vol.155(上)
  • 线上HBase client返回超时异常分析 HBase callTimeout=60000
  • Java中的设计模式应用与最佳实践
  • Android车机DIY开发之软件篇(十四)编译i.mx8mplus官方kernel
  • 硬件电路基础
  • CSRF攻击XSS攻击
  • GRN前沿:DeepMCL:通过深度多视图对比学习从单细胞基因表达数据推断基因调控网络
  • 工厂方法模式详解(Java)
  • 【C语言】指针的练习题
  • 网站设计)/提升seo排名
  • 做网站还是app好/霸屏seo服务
  • 县级门户网站建设的报告/下载百度网盘app
  • 电子商务网站建设策划报告/seo推广服务
  • 下列关于网站开发中网页上传/网络销售挣钱吗
  • 江苏网站建设开发/我想做电商怎么加入