oAuth和AuthSub

今天看Google的API,有一个 Google 身份认证接口

The ClientLogin API lets you incorporate programmatic login into desktop or mobile applications, while the AuthSub API gives web applications the ability to access a user's Google account without handling the user's login information.
===============================================

oAuth涉及到3大块的交互和通信。1. 用户2. 拥有用户资料/资源的服务器A3. 求资源的服务器B,。

oAuth的典型应用场景(senario)

以前,用户在 拥有资源 的的网站A有一大堆东西;现在用户发现了一个新的网站B,比较好玩,但是这个新的网站B想调用 拥有资源的网站A的数据。

例如,

  • 在线打印服务的网站,需要调用我的私人Flickr图片。
  • xiaonei.com之类的SNS在线社交网站需要从我的Hotmail导入联系人

那么有以下几个方法:

  1. 需要转移的数据如果是一段文字的话,用户自己Ctrl+C, Ctrl+V。如果是图片呢?复制就麻烦了。
  2. 用户自己下载再上传。——麻烦
  3. 用户老老实实把自己账户ID和密码交上来,服务器自动去抓取。——这个等于把自己家的钥匙给别人来让别人借书一样。。。

oAuth的方式

用户在 求资源的网站B 上,点击一个URL,跳转到 拥有 资源的网站A。
拥有资源的网站A提示:你需要把资源分享给B网站吗?Yes/No。
用户点击 Yes拥有资源的网站A 给 求资源的网站B 临时/永久 开一个通道,然后 求资源的网站 就可以来 拥有资源的网站 抓取所需的信息了。

========================================================

Google AuthSub与Google OAUTH有什么区别了?

一、Google OAUTH认证是遵守国际OAUTH规范的,是一种标准化的东西,而Google AuthSub只是Google自己实现的一种方式,是非标准化的;

二、Google OAUTH是开放的,与OpenId结合,将Google用户体系与其他服务提供商用户体系、授权服务打通,比Google AuthSub更开放;

三、Google OAUTH将请求都进行签名,而AuthSub没有,安全性没有OAUTH高。当然,AuthSub也有自己的优势:第三方应用与Google认证中心交互过程简单,开发人员更容易理解与实现。如果你开发出来的程序只涉及到了Google的服务,不妨先考虑AuthSub认证方式,应该它比Google OAUTH更方便。
posted @ 2009-05-07 10:24  鱼缸里的小鱼  Views(983)  Comments(0)    收藏  举报