diff --git a/sa-token-doc/doc/_sidebar.md b/sa-token-doc/doc/_sidebar.md index b966bb3a..a3676457 100644 --- a/sa-token-doc/doc/_sidebar.md +++ b/sa-token-doc/doc/_sidebar.md @@ -79,6 +79,7 @@ - [解决反向代理 uri 丢失的问题](/fun/curr-domain) - [参考:把权限放在缓存里](/fun/jur-cache) - [解决跨域问题](/fun/cors-filter) + - [技术选型:SSO 与 OAuth2 对比](/fun/sso-vs-oauth2) - [框架源码所有技术栈](/fun/tech-stack) - [为Sa-Token贡献代码](/fun/git-pr) - [Sa-Token框架掌握度--在线考试](/fun/sa-token-test) diff --git a/sa-token-doc/doc/fun/sso-vs-oauth2.md b/sa-token-doc/doc/fun/sso-vs-oauth2.md new file mode 100644 index 00000000..a3cd5764 --- /dev/null +++ b/sa-token-doc/doc/fun/sso-vs-oauth2.md @@ -0,0 +1,21 @@ +# 技术选型:[ 单点登录 ] VS [ OAuth2.0 ] + +--- + +QQ群库经常有小伙伴提问:项目需要搭建统一认证中心,是用 SSO 方便还是 OAuth2.0 方便呢?针对这个问题,我们列出两者的主要区别以供大家参考: + + +| 功能点 | SSO单点登录 | OAuth2.0 | +| :-------- | :-------- | :-------- | +| 统一认证 | 支持度高 | 支持度高 | +| 统一注销 | 支持度高 | 支持度低 | +| 多个系统会话一致性 | 强一致 | 弱一致 | +| 第三方应用授权管理 | 不支持 | 支持度高 | +| 自有系统授权管理 | 支持度高 | 支持度低 | +| Client级的权限校验 | 不支持 | 支持度高 | +| 集成简易度 | 比较简单 | 难度中等 | + + +注:以上仅为在 Sa-Token 中两种技术的差异度比较,不同框架的实现可能略有差异,但整体思想是一致的。 + + diff --git a/sa-token-doc/doc/more/common-questions.md b/sa-token-doc/doc/more/common-questions.md index d937ecbb..8dda9f98 100644 --- a/sa-token-doc/doc/more/common-questions.md +++ b/sa-token-doc/doc/more/common-questions.md @@ -165,10 +165,6 @@ So:从鉴权粒度的角度来看,需要针对一个模块鉴权的时候, 为了保证相关组件能够及时初始化,框架默认给过滤器注册的优先级为-100,如果你想更改优先级,直接在注册过滤器的方法上加上 `@Order(xxx)` 即可覆盖框架的默认配置 - ### 还是有不明白到的地方? 请在`gitee` 、 `github` 提交 `issues`,或者加入qq群交流(群链接在[首页](README?id=交流群)) - -### 我能为这个框架贡献代码吗? -**可以**,如果有好的想法,请直接提交pr步骤 diff --git a/sa-token-doc/doc/oauth2/oauth2-api.md b/sa-token-doc/doc/oauth2/oauth2-api.md index 658e5eb0..7d1db796 100644 --- a/sa-token-doc/doc/oauth2/oauth2-api.md +++ b/sa-token-doc/doc/oauth2/oauth2-api.md @@ -200,7 +200,8 @@ http://sa-oauth-server.com:8001/oauth2/token | grant_type| 是 | 返回类型,这里请填写:password| | client_id | 是 | 应用id | | username | 是 | 用户的Server端账号 | -| password | 否 | 用户的Server端密码 | +| password | 是 | 用户的Server端密码 | +| scope | 否 | 具体请求的权限,多个用逗号隔开 | 接口返回示例: diff --git a/sa-token-doc/doc/oauth2/readme.md b/sa-token-doc/doc/oauth2/readme.md index 11022c34..fd9c51d0 100644 --- a/sa-token-doc/doc/oauth2/readme.md +++ b/sa-token-doc/doc/oauth2/readme.md @@ -11,12 +11,15 @@ [OAuth2.0 简单解释](https://www.ruanyifeng.com/blog/2019/04/oauth_design.html) -Sa-OAuth2 模块基于 [RFC-6749 标准](https://tools.ietf.org/html/rfc6749) 编写,通过Sa-OAuth2你可以非常轻松的实现系统的OAuth2.0授权认证 + + +如果你还不知道你的项目应该选择 SSO 还是 OAuth2.0,可以参考这篇:[技术选型:[ 单点登录 ] VS [ OAuth2.0 ]](/fun/sso-vs-oauth2) + ### OAuth2.0 四种模式 -基于不同的使用场景,OAuth2.0设计了四种模式: +Sa-OAuth2 模块基于 [RFC-6749 标准](https://tools.ietf.org/html/rfc6749) 编写,基于不同的使用场景,OAuth2.0设计了四种模式: 1. 授权码(Authorization Code):OAuth2.0标准授权步骤,Server端向Client端下放Code码,Client端再用Code码换取授权Token 2. 隐藏式(Implicit):无法使用授权码模式时的备用选择,Server端使用URL重定向方式直接将Token下放到Client端页面