`
guazi
  • 浏览: 54508 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Oauth2.0与Oauth1.0的区别

 
阅读更多

 

Oauth1.0oauth2.0的区别

云计算的热火,引出了大量的开放平台,各种第三方应用建立在开放平台之上,对于安全性的要求,于是出现了oauth协议,2007年发布了Oauth1.0协议,同时又开始了Oauth2.0的讨论,2.0的草案与2011年发布。新的2.01.0不兼容。下面说一说2.01.0的区别:

12.0的用户授权过程有2步,

         A)引导用户到授权服务器,请求用户授权,用户授权后返回 授权码(Authorization Code)

         B)客户端由授权码到授权服务器换取访问令牌(access token)

         C)用访问令牌去访问得到授权的资源

         1.0的授权分3,

         A)客户端到授权服务器请求一个授权令牌(request token&secret)

         B)引导用户到授权服务器请求授权

         C)用访问令牌到授权服务器换取访问令牌(access token&secret)

         D)用访问令牌去访问得到授权的资源

21.0协议每个token都有一个加密,2.0则不需要。这样来看1.0似乎更加安全,但是2.0要求使用https协议,安全性也更高一筹。

32.0充分考虑了客户端的各种子态,因而提供了多种途径获取访问令牌

         a)授权码

         b)客户端私有证书

         c)资源拥有者密码证书

         d)刷新令牌

         e)断言证书

         1.0只有一个用户授权流程。

暂时总结出这三点。

1
0
分享到:
评论
4 楼 guazi 2013-05-17  
引用
oauth = auth.requestToken(oauth);


从这里就可以知道是1.0的了。
另外腾讯2.0的接口我调用过,是https开头的。呵呵
3 楼 dbh0512 2013-05-16  
@RequestMapping(value = "/tencent/login", method = RequestMethod.GET)
	public String tencentLogin(HttpServletRequest request, Model m) throws IOException {
		
		//初始化OAuth
		com.tencent.weibo.beans.OAuth oauth=new com.tencent.weibo.beans.OAuth();
		oauth.setOauth_callback(WeiboConfig.getValue("tenctenMobileredirect_URI").trim());
		OAuthClient auth=new OAuthClient(); 
		try {
			oauth = auth.requestToken(oauth);
			
			if (oauth.getStatus() == 1) {
				return EnumErrorCode.ERROR_404.getValue();
			} else {
				String oauth_token = oauth.getOauth_token();
				if(oauth_token != null && !"".equals(oauth_token)){
					String clientIp = WingsStrUtil.getRemortIP(request);
					
					
					String url = "http://open.t.qq.com/cgi-bin/authorize?oauth_token="+ oauth_token;
					System.out.println("oauth_token:   "+ oauth_token);
					return "redirect:" + url;
				}
			}
			
		} catch (Exception e1) {
			e1.printStackTrace();
		}
		return "/accounts/login";

	}


这样和官方Oauth2.0中提到的请求方式还是不同  我搞不明白这究竟是1.0还是2.0
2 楼 guazi 2013-05-16  
有 oauth_signature的就是1.0协议,因为2.0没有了签名验证,你说的这个也算一个。至于你问的最后一个问题,看的不是很明白,1.0的回调没有oauth_token返回的
1 楼 dbh0512 2013-05-16  
官方Oauth2.0首先要求请求[url]https://open.t.qq.com/cgi-bin/oauth2/authorize?client_id=APP_KEY&response_type=token&redirect_uri=http://www.myurl.com/example [/url]

一种的方式请求的是:http://open.t.qq.com/cgi-bin/authorize?oauth_token=https%3A%2F%2F127.0.0.1%2Ftencent%2Flogin%2Fcallback&oauth_consumer_key=801***228&oauth_nonce=4453866&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1368685710&oauth_version=1.0&oauth_signature=S%2BfiEDpbMwl9BW6U5wXN%2FSnWQdg%3D这种是1.0吗? 是否只要不是使用code换取的access_token就是Oauth1.0 

这样的区别是什么 为什么会有这样不同的写法  第二种方式在回调方法中 有时候接不到oauth_token, oauth_verifier是什么原因 ?

相关推荐

    QQ登陆OAuth2.0API源码 v1.0.10.27.rar

    (参考Default.aspx文件) QQ登陆OAuth2.0API源码 2011-10-27 更新 1、使用[可选参数]特性,定制参数更方便,灵活。 2、使用XML配置文件(Wbm.QzoneV2.config)。 3、封装Model,用户信息Model(SinaMUsers.cs) 4、...

    OAuth2.0协议中文版.pdf

    OAuth2.0是OAuth协议的延续版本,但不向前兼容OAuth 1.0(即完全废止了OAuth1.0)。 OAuth 2.0关注客户端开发者的简易性。要么通过组织在资源拥有者和HTTP服务商之间的被批准的交互动作代表用户,要么允许第三方应用...

    OAuth2.0协议原理与实现

    ### OAuth2.0协议原理与实现 #### 一、OAuth2.0协议概述 OAuth2.0协议是一种广泛应用于第三方登录及授权的标准协议。相比于OAuth1.0版本,OAuth2.0进行了多方面的优化和改进,例如简化了授权流程、取消了Token的...

    新浪微博OAuth2.0 SDK+ Demo C#

    《全面解析:使用C#开发新浪微博OAuth2.0 SDK及Demo》 在互联网开发中,社交媒体平台的API接口是开发者不可或缺的工具,其中新浪微博作为中国主流的社交网络之一,提供了丰富的API供开发者进行数据交互。本文将深入...

    OAuth2.0简单介绍文档

    OAuth1.0 和 OAuth2.0 是两个主要的版本,各自有着不同的特性和使用场景。 1. OAuth 1.0 OAuth 1.0 是最初的设计版本,主要用于解决应用程序访问用户在其他服务上的数据的问题。它通过三个角色——资源所有者(用户...

    OAuth2.0安全案例回顾

    回顾OAuth1.0时代的安全案例,可以帮助我们更好地理解OAuth2.0的安全挑战及其解决方案。这些案例包括但不限于平台方授权页面的CSRF、OAuth1.0 session fixation以及协议实现中的其他安全问题。 总之,OAuth2.0的...

    OAUTH2.0中文规范

    OAuth 2.0 试图改进早期 OAuth 1.0 和 1.0a 版本中的一些不足,使其更适合现代Web服务和云计算环境。 在OAuth 2.0 中,有几个关键的角色和概念: 1. **第三方** - 想要访问受保护资源的应用程序。 2. **应用/程序*...

    The OAuth 2.0 Authorization Framework(rfc6749).pdf

    OAuth 2.0协议流程包括资源所有者与授权服务器之间的授权授权,以及客户端使用授权服务器授权的授权码或访问令牌来访问资源服务器上的资源。协议支持多种授权方式,包括授权码模式、隐式模式、资源所有者密码凭证...

    oauth2.0介绍

    对oauth2.0进行介绍,并与oauth1.0和openId进行对比说明

    OAuth2.0.pdf

    OAuth2.0 标准英文文档。。OAuth(开放授权)是一个开放标准,允许用户授权第三方移动应用访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方移动应用或分享他们数据的所有内容,OAuth2.0...

    jmeter 实现oauth1.0授权认证

    最后,按照OAuth签名的规则,将排序后的参数字符串与密钥(consumer secret和token secret组合)进行HMAC-SHA256哈希运算,生成签名。这个签名将作为请求头的一部分发送,验证服务器端的身份。 4. **构建OAuth请求...

    asp.netQQ登陆OAuth2.0API源码系统v1.0.10.27

    QQ登陆OAuth2.0API源码 QQ登陆OAuth2.0API使用流程: 我不忙-QQ登陆OAuth2.0API使用流程: 1、根据需要求修改配置文件(Wbm.QzoneV2.config)。 2、注册ApplicationKey。(参考UiPageBase.cs文件) 3、获取用户认证地址...

    OAuth 2.0系列教程

    OAuth 2.0 是目前比较流行的做法,它率先被Google, Yahoo, Microsoft, Facebook等使用。之所以标注为 2.0,是因为最初有一个1.0协议,但这个1.0协议被弄得太复杂,易用性差,所以没有得到普及。2.0是一个新的 设计,...

    141-OAuth 2.0实战课.zip

    讲解可能包括OAuth的发展历程,以及OAuth 1.0到OAuth 2.0的变化,强调安全性与易用性的平衡。 “02丨基础篇 (6讲)”将深入讲解OAuth 2.0的核心概念和流程。这部分内容可能涵盖以下几点: 1. 授权类型:如授权码...

    OAuth 2.0授权框架.pdf

    OAuth 2.0在安全性上虽然相较于OAuth 1.0有大幅提升,但仍存在一些潜在的安全风险,如跨站请求伪造(CSRF)、点击劫持、代码注入和输入验证不当、开放的重定向器滥用等问题。因此,在实施过程中需要注意采取相应的...

Global site tag (gtag.js) - Google Analytics