oath认证
在认证和授权的过程中涉及的三方包括:
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相同的整体架构。
这个草案是围绕着 OAuth2.0的需求和目标,历经了长达一年的讨论,讨论的参与者来自业界的各个知名公司,包括Yahoo!, Facebook, Salesforce, Microsoft, Twitter, Deutsche Telekom, Intuit, Mozilla, and Google。
OAuth 2.0的新特性: User-Agent Flow – 客户端运行于用户代理内(典型如web浏览器)。
Web Server Flow – 客户端是web服务器程序的一部分,通过http request接入,这是OAuth 1.0提供的流程的简化版本。
Device Flow – 适用于客户端在受限设备上执行操作,但是终端用户单独接入另一台电脑或者设备的浏览器
Username and Password Flow – 这个流程的应用场景是,用户信任客户端处理身份凭据,但是仍然不希望客户端储存他们的用户名和密码,这个流程仅在用户高度信任客户端时才适用。
Client Credentials Flow – 客户端适用它的身份凭据去获取access token,这个流程支持2-legged OAuth的场景。
Assertion Flow – 客户端用assertion去换取access token,比如SAML assertion。
可以通过使用以上的多种流程实现Native应用程序对OAuth的支持(程序运行于桌面操作系统或移动设备)
application support (applications running on a desktop or mobile device) can be implemented using many of the flows above.
持信人token
OAuth 2.0 提供一种无需加密的认证方式,此方式是基于现存的cookie验证架构,token本身将自己作为secret,通过HTTPS发送,从而替换了通过 HMAC和token secret加密并发送的方式,这将允许使用cURL发起APIcall和其他简单的脚本工具而不需遵循原先的request方式并进行签名。
签名简化:
对于签名的支持,签名机制大大简化,不需要特殊的解析处理,编码,和对参数进行排序。使用一个secret替代原先的两个secret。
短期token和长效的身份凭据
原先的OAuth,会发行一个 有效期非常长的token(典型的是一年有效期或者无有效期限制),在OAuth 2.0中,server将发行一个短有效期的access token和长生命期的refresh token。这将允许客户端无需用户再次操作而获取一个新的access token,并且也限制了access token的有效期。
角色分开
OAuth 2.0将分为两个角色:
Authorization server负责获取用户的授权并且发布token。
Resource负责处理API calls。
② oauth2.0可以自动授权吗
在认证和授权的过程中涉及的三方包括:
1、服务提供方,用户使用服务提供方来存储受保护的资源,如照片,视频,联系人列表。
2、用户,存放在服务提供方的受保护的资源的拥有者。
3、客户端,要访问服务提供方资源的第三方应用,通常是网站,如提供照片打印服务的网站。在认证过程之前,客户端要向服务提供者申请客户端标识。
使用OAuth进行认证和授权的过程如下所示:
用户想操作存放在服务提供方的资源。
用户登录客户端向服务提供方请求一个临时令牌。
服务提供方验证客户端的身份后,授予一个临时令牌。
客户端获得临时令牌后,将用户引导至服务提供方的授权页面请求用户授权。在这个过程中将临时令牌和客户端的回调连接发送给服务提供方。
用户在服务提供方的网页上输入用户名和密码,然后授权该客户端访问所请求的资源。
授权成功后,服务提供方引导用户返回客户端的网页。
客户端根据临时令牌从服务提供方那里获取访问令牌。
服务提供方根据临时令牌和用户的授权情况授予客户端访问令牌。
③ 新浪微博的OAuth认证出来的oauth_token 和 oauth_token_secret怎么使用
只是一些授权吗 与新浪数据库对比的 防止非法提交
④ OAUTH,OPENID,SAML,CAS做统一认证与授权时有什么区别
OpenID是Authentication
OAuth是Authorization
前者是网站对用户进行认证,让网站知道逗你是你所声称的URL的属主地
后者其实并不包括认证,只不过逗只有认证成功的人才能进行授权地,结果类似于逗认证+授权地了。OAuth相当于:A网站给B网站一个令牌,然后告诉B网站说根据这个令牌你可以获取到某用户在A网站上允许你访问的所有信息
如果A网站需要用B网站的用户系统进行登录(学名好像叫federated login),它可以
选择OpenID认证,然后通过attribute exchange获取用户的昵称或其他通过OpenID暴露出来的用户属性,或者
选择OAuth认证,获取到token后再用token获取用户昵称或其他允许被访问的信息
⑤ “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等。
⑥ oauth2认证后返回#怎么获取accesstoken
数据库保存你最后获取到的access_token就可以了,当然,现在由于有refresh_token的存在,你还专必须保存下refresh_token和过期时属间,以用于更新access_token
至于access_token如何使用,其实就是相当于一个key你直接使用就可以了,你可以看这里
比如你说的获取用户信息,可以用这个接口获取到,其中只要你传递access_token就可以获取到与这个access_token匹配的用户的信息了。
⑦ 360版部落冲突oauth token认证失败怎么办
这个建议你可以去360的官方社区去咨询一下,会有360的产品答疑师为你解答的
⑧ java 新浪微博oauth2如何不跳转至认证页面进行认证
亲:个抄人认证认证范围:支持娱乐、体育、传媒、财经、科技、文学出版、政府官员、人文艺术、游戏、军事航空、动漫、旅游、时尚等领域知名人士的认证申请。
基本条件:绑定手机、有头像、粉丝数不低于100、关注数不低于50。
⑨ 手机应用中使用OAuth认证,如何解决信任问题
设置步骤如下:
打开设置菜单,找到权限管理选项。
打开后你可以看到很多权限。
比如读取联回系人的权限。
如果答你不想让某个软件读取你的联系人,点开它选择禁止即可。
还可以查看某个软件的所有权限,打开设置里的权限管理后,点右侧的应用。
点开后软件的所有权限都会显示在其中,如果比较信任某个软件,还可以选择信任选项。
⑩ OIDC与OAuth有什么区别,国内有哪些身份认证厂商是支持OIDC协议的呢
OIDC是基于OAuth2+OpenID整合的新的认证授权协议。
OAuth2是一个授权(authorization)的开放协议,OAuth2只解决了授权问题,没有实现认证部分,往往需要添加额外的API来实现认证。而OpenID呢,是一个认证(authentication )的协议。
就好像一把钥匙可以打开你的家门,OAuth做的事情就是无论谁只要拿着这个钥匙就打开你的家门,OIDC做的是必须是你本人拿着这个钥匙才能打开你的家门,其他人不行。
OIDC技术还是很前沿的一项技术,目前国内外支持的厂商并不是特别多。
OKTA:国际巨头公司 http://okta.com/ 身份认证的独角兽,目前不支持中国的服务。
九州云腾:国内公司 https://www.idsmanager.com/ 模式有点像国内的OKTA,支持多种认证协议,国内少数支持OIDC身份认证的服务厂商。
安迅奔 :国内公司 http://www.axbsec.com/ 国内老牌身份认证公司,自己的身份认证模式,还不支持OIDC认证协议。