博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
OAuth与SSO、REST有哪些区别与联系
阅读量:6329 次
发布时间:2019-06-22

本文共 821 字,大约阅读时间需要 2 分钟。

    谈到OAuth,很多人自然而然的就会想起SSO,还有些人会想起REST。其实,OAuth与SSO和REST并没有太深的关系,它们分别有其不同的适用场景。接下来,我们就看看它们之间的区别与联系是什么?

    OAuth与SSO的区别?

    OAuth是一种授权协议,只是为用户资源的授权提供了一个安全的、开放而又简易的标准。OAuth 2.0为客户端开发者开发Web应用,桌面端应用程序,移动应用及客厅设备提供特定的授权流程。

    SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。

    通俗的讲,OAuth是为解决不同公司的不同产品实现登陆的一种简便授权方案,通常这些授权服务都是由大客户网站提供的,如QQ,新浪微博,人人网等。而使用这些服务的客户可能是大客户网站,也可能是小客户网站。使用OAuth授权的好处是,在为用户提供某些服务时,可减少或避免因用户懒于注册而导致的用户流失问题。

    SSO通常处理的是一个公司的不同应用间的访问登陆问题。如企业应用有很多业务子系统,只需登陆一个系统,就可以实现不同子系统间的跳转,而避免了登陆操作。

    OAuth与SSO的应用场景不同,虽然可以使用OAuth实现SSO,但并不建议这么做。不过,如果SSO和OAuth结合起来的话,理论上是可以打通各个公司的各个不同应用间的登陆问题,但现实往往是残酷的。

    OAuth与REST的关系?

    谈到REST的安全性问题时,很多人容易联想到使用OAuth来解决这个难题。其实,REST与OAuth有着天壤之别。

    OAuth为网站(系统)用户授权第三方应用(网站、系统)访问自己在网站(系统)中的隐私数据提供的一种规范。

    REST初期理念是“每个不同的子资源都有一个绝对唯一且不重复的URI地址”。它仅仅是一个URI资源而已,而且是无状态的,因此REST并不适合做需要授权的应用。恰恰相反的是,在使用OAuth授权时,通常会使用REST API来完成授权操作。

转载地址:http://xqyoa.baihongyu.com/

你可能感兴趣的文章
NOI 05:最高的分数描述
查看>>
spring之AOP的简单实例
查看>>
HTML上传文件的多种方式
查看>>
Sql server2012还原备份文件语句
查看>>
OneZero——Review报告会
查看>>
IOS实现多媒体音频之音乐播放器
查看>>
[DB]mysql 及sql server2005下实现分页效果的sql语句
查看>>
C#后台程序与HTML页面中JS方法互调(功能类似于Ajax中的DWR)
查看>>
三分算法
查看>>
BOM/DOM
查看>>
Linux -- cal/bc/LANGE与帮助文档
查看>>
JDK1.8快速入门
查看>>
Problem E
查看>>
判断闰年的流程图
查看>>
看《米花之味》
查看>>
1075. 链表元素分类(25)
查看>>
FC 坦克大战 老巢铁墙
查看>>
Centos7 下nginx nginx-1.13.4 安装
查看>>
HEOI2018游记
查看>>
Shell脚本基础
查看>>