词条 | Basic Auth |
释义 | 认证 开放平台有两种认证方式,一种是Basic Auth,一种是OAuth。 1、Basic Auth(HTTP Auth) Basic Auth简单点说明就是每次请求API时都提供用户的username和password。 。这种方式优点和缺点都很明显。 优点: u 使用非常简单, u 开发和调试工作简单, u 没有复杂的页面跳转逻辑和交互过程; u 更利于发起方控制; 缺点: u 安全性低,每次都需要传递用户名和密码,用户名和密码很大程度上存在被监听盗取的可能; u 同时应用本地还需要保存用户名和密码,在应用本身的安全性来说,也存在很大问题; u 开放平台服务商出于自身安全性的考虑(第三方可以得到该服务商用户的账号密码,对于服务商来说是一种安全隐患),未来也会限制此认证方式(Twitter就计划在6月份停止Basic Auth的支持) u 用户如果更改了用户名和密码,还需要重新进行密码校验的过程。 2、OAuth OAuth为用户资源的授权提供了一个安全、开放的标准,将会是以后开发平台普遍遵守的,目前Twitter、Sina微博、豆瓣、Google等都提供对它的支持。它分为几个交互过程: 1)应用用APP KEY和APP SECRET换取OAuth_token; 2)应用将用户引导到服务商的页面对该OAuth_token进行授权(可能需要输入用户名和密码); 3)服务商的页面跳转回应用,应用再根据参数去服务商获得Access Token; 4)使用这个Access Token就可以访问API了。 上述过程如下图所示: OAuth认证过程 OAuth的优点: u 安全性高,用户的账户和密码只需要提供一次,而且是在服务商的页面上提供,防止了Basic Auth反复传输密码带来的安全隐患; u Access Token访问权限仅限于应用,被窃取不会影响用户在该服务商的其他服务; u Access Token即使被监听丢失了随时可以撤销,不像密码丢失可能就被别人篡改了; u 用户修改了密码也不会影响该应用的正常使用。 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。