本文目录
- “oauth”的中文意思
- oauth是什么意思
- OAuth2.0的认证授权过程
- oauth2.0怎么读
- oauth2.0的设计初衷是为了通过授权避免用户多次登录吗
- oauth和sso,用途上有什么区别
- 请先通过oauth登录系统什么意思
- 用通俗的例子解释OAuth和OpenID的区别
- OpenID 和 OAuth 有什么区别
“oauth”的中文意思
oauth本质一种开放的协议,对象是第三方可以使用OAUTH认证服务
简介
OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。同时,任何第三方都可以使用OAUTH认证服务,任何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP、JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。互联网很多服务如Open API,很多大公司如Google,Yahoo,Microsoft等都提供了OAUTH认证服务,这些都足以说明OAUTH标准逐渐成为开放资源授权的标准。
在官方网站的首页,可以看到下面这段简介:
An open protocol to allow secure API authorization in a simple and standard method from desktop and web applications.
大概意思是说OAUTH是一种开放的协议,为桌面程序或者基于BS的web应用提供了一种简单的,标准的方式去访问需要用户授权的API服务。OAUTH类似于Flickr Auth、Google’s AuthSub、Yahoo’s BBAuth、 Facebook Auth等。
oauth是什么意思
OAUTH是一种开放的协议
OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是OAUTH的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此OAUTH是安全的。oAuth是Open Authorization的简写。
OAuth2.0的认证授权过程
在认证和授权的过程中涉及的三方包括:
1、服务提供方,用户使用服务提供方来存储受保护的资源,如照片,视频,联系人列表。
2、用户,存放在服务提供方的受保护的资源的拥有者。
3、客户端,要访问服务提供方资源的第三方应用,通常是网站,如提供照片打印服务的网站。在认证过程之前,客户端要向服务提供者申请客户端标识。
使用OAuth进行认证和授权的过程如下所示:
用户想操作存放在服务提供方的资源。
用户登录客户端向服务提供方请求一个临时令牌。
服务提供方验证客户端的身份后,授予一个临时令牌。
客户端获得临时令牌后,将用户引导至服务提供方的授权页面请求用户授权。在这个过程中将临时令牌和客户端的回调连接发送给服务提供方。
用户在服务提供方的网页上输入用户名和密码,然后授权该客户端访问所请求的资源。
授权成功后,服务提供方引导用户返回客户端的网页。
客户端根据临时令牌从服务提供方那里获取访问令牌。
服务提供方根据临时令牌和用户的授权情况授予客户端访问令牌。
客户端使用获取的访问令牌访问存放在服务提供方上的受保护的资源。 OAuth 1.0在2007年的12月底发布并迅速成为工业标准。
2008年6月,发布了OAuth 1.0 Revision A,这是个稍作修改的修订版本,主要修正一个安全方面的漏洞。
2010年四月,OAuth 1.0的终于在IETF发布了,协议编号RFC 5849。
OAuth 2.0的草案是在2011年5月初在IETF发布的。
OAuth is a security protocol that enables users to grant third-party access to their web resources without sharing their passwords.
OAuth是个安全相关的协议,作用在于,使用户授权第三方的应用程序访问用户的web资源,并且不需要向第三方应用程序透露自己的密码。
OAuth 2.0是个全新的协议,并且不对之前的版本做向后兼容,然而,OAuth 2.0保留了与之前版本OAuth相同的整体架构。
这个草案是围绕着 OAuth3.0的需求和目标,历经了长达一年的讨论,讨论的参与者来自业界的各个知名公司,包括Yahoo!, Facebook, Salesforce, Microsoft, Twitter, Deutsche Telekom, Intuit, Mozilla, and Google。
OAuth 2.0的新特性: User-Agent Flow – 客户端运行于用户代理内(典型如web浏览器)。
Web Server Flow – 客户端是web服务器程序的一部分,通过-oauth
oauth2.0怎么读
o~si 2.0 哦~斯~二点零,哦发音拼音中第四声
OAuth3.0是OAuth协议的下一版本,但不向后兼容OAuth 1.0即完全废止了OAuth1.0。 OAuth 2.0关注客户端开发者的简易性。要么通过组织在资源拥有者和HTTP服务商之间的被批准的交互动作代表用户,要么允许第三方应用代表用户获得访问的权限。同时为Web应用,桌面应用和手机,和起居室设备提供专门的认证流程。
-oauth
oauth2.0的设计初衷是为了通过授权避免用户多次登录吗
不是,oauth的设计是用户不向第三方暴露自己的登陆信息的情况下,授权第三方以自己的身份访问一些资源.
oauth3的设计初衷是源于oauth1计算签名的复杂度,希望进一步降低第三方开发者的开发门槛
oauth和sso,用途上有什么区别
这两个东西不是一个概念
1、oauth是一种认种方式,他有自己的规则,详细的协议、格式定义等,他是一个技术标准。
2、SSO是单点登录。他是一类方法的结合,实现SSO的技术有很多种,如:JAAS, JOSSO, LDAP, Netegrity以及 Microsoft Exchange等等。也可以使用oauth做单点登录的技术。
-oauth
请先通过oauth登录系统什么意思
就是先通过第三方系统才可以登陆。OAuth的解释就是对第三方应用的授权机制,使其获取用户的数据。数据所有者收到第三方请求授权后,告诉系统通过第三方应用的请求,系统就会自动生成一个令牌(token),用来替代密码,供第三方应用使用。
-oauth
用通俗的例子解释OAuth和OpenID的区别
1)在“获取用户基本信息”接口里得到的客户信息比“OAuth3.0网页授权”接口还多,那么为何还要用“OAuth3.0网页授权”接口呢? 2)如果只要获取OpenID的话,是不是只用“接收普通信息”接口就够呢? 3)在用户没有重新关注的情况之下,用户每次发送消息。
-oauth
OpenID 和 OAuth 有什么区别
OPENID:
为了识别用户,每个用户针对每个公众号会产生一个安全的OpenID,如果需要在多公众号、移动应用之间做用户共通,则需前往微信开放平台,将这些公众号和应用绑定到一个开放平台账号下,绑定后,一个用户虽然对多个公众号和应用有多个不同的OpenID,但他对所有这些同一开放平台账号下的公众号和应用,只有一个UnionID,可以在用户管理-获取用户基本信息(UnionID机制)文档了解详情。
OPENID是用户针对微信公众号的唯一识别码,相当于用户ID。通过这个ID我们就可以识别用户。
OAuth:
如果用户在微信客户端中访问第三方网页,公众号可以通过微信网页授权机制,来获取用户基本信息,进而实现业务逻辑。
关于网页授权的两种scope的区别说明
1、以snsapi_base为scope发起的网页授权,是用来获取进入页面的用户的openid的,并且是静默授权并自动跳转到回调页的。用户感知的就是直接进入了回调页(往往是业务页面)
2、以snsapi_userinfo为scope发起的网页授权,是用来获取用户的基本信息的。但这种授权需要用户手动同意,并且由于用户同意过,所以无须关注,就可在授权后获取该用户的基本信息。
3、用户管理类接口中的“获取用户基本信息接口”,是在用户和公众号产生消息交互或关注后事件推送后,才能根据用户OpenID来获取用户基本信息。这个接口,包括其他微信接口,都是需要该用户(即openid)关注了公众号后,才能调用成功的。
具体而言,网页授权流程分为四步:
1、引导用户进入授权页面同意授权,获取code
2、通过code换取网页授权access_token(与基础支持中的access_token不同)
3、如果需要,开发者可以刷新网页授权access_token,避免过期
4、通过网页授权access_token和openid获取用户基本信息(支持UnionID机制)
所以,当用户访问第三方网页时,我们可以通过OAuth网页授权的方式获取到用户的OPENID,通过OPENID来进行一系列有关微信用户的功能操作。
-oauth