SSO 单点登录和 OAuth2.0 的区别和理解

SSO 单点登录和 OAuth2.0 的区别和理解
最新回答
未央_离殇

2022-02-24 11:19:58

本文主要比较SSO单点登录和OAuth2.0在概念和实现上的差异。SSO的核心思想是将用户认证与业务系统分离,通过独立的登录中心实现一站式登录后,用户无需再次登录即可访问多个相关系统,如淘宝APP中的天猫、聚划算链接。

OAuth2.0则是一个授权协议,它允许用户授权第三方应用访问他们在其他服务器上的资源,而非用于单点登录。OAuth2.0有四种模式,如授权码模式、隐藏式模式、密码式模式和客户端凭证模式,每种模式针对不同应用场景。在实现SSO时,OAuth2.0服务端负责令牌发放,JWT(JSON Web Token)常用于承载Access_Token。

Spring Security和Shiro是Java框架,主要用于安全访问和权限控制,而非SSO或OAuth2.0的直接组成部分。SSO是一种策略,OAuth2.0是一个工具,两者在实际操作中可以结合使用,但概念上是不同的。理解两者的关键在于它们的功能和应用场景。