参考资料

百度百科BasicAuth
维基百科OAuth

BasicAuth基本授权

BasicAuth又叫HttpAuth,它非常简单。例如你访问一个页面时,会弹出用户名密码框

它的优点是:简单,只要维护好用户名密码的安全性即可

访问使用BasicAuth的页面时,可以很简单的填写用户名和密码。许多开源HTTP请求库都提供BasicAuth的接口。
下面以Python中的requests库为例:

requests.get("http://usrname:password@www.baidu.com")
requests.get("http://www.baidu.com",auth=("usrname","password"))

OAuth:授权方式的开放标准

主要用途:一些拥有API资源的大户(比如微信、百度语音等),跟普通用户分享资源就通过OAuth。

OAUTH协议为用户资源的授权提供了一个安全的、开放而又简易的标准。同时,任何第三方都可以使用OAUTH认证服务,任何服务提供商都可以实现自身的OAUTH认证服务,因而OAUTH是开放的。业界提供了OAUTH的多种实现如PHP、JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。互联网很多服务如Open API,很多大公司如Google,Yahoo,Microsoft等都提供了OAUTH认证服务,这些都足以说明OAUTH标准逐渐成为开放资源授权的标准。

OAuth有1.0和2.0两个版本,下面讲1.0
OAuth 1.0原理:

OAuth1.0认证流程:

  • 第一步:网站向认证平台请求一个未授权的Token,这个Request Token Url是前面说的第一个Url;
  • 第二步:跳转至用户授权页面,提示用户进行登录,并进行授权,返回获得已授权的Token,用到的User Authorization Url是前面说的第二个Url;
  • 第三步:通过已授权的Token,向认证平台请求Access Token(数据令牌),用到的Request Access Url是前面说的第三个Url,返回后到这步整个认证流程就结束了,最后一步,是通过数据令牌等参数,调用接口获取用户信息,不完全算认证的流程。

可能是最具破坏性的OAuth安全故障是网络钓鱼漏洞:使用OAuth每个网站在视觉上(但不是技术上的)要求最终用户提供他们自己的主人身份,以防止普通用户理解,他们不应该键入的用户名和密码那些在他们遇到的攻击者的网站,在视觉上模拟这个过程窃取凭据。双因素身份验证不能防止这种攻击,因为网络钓鱼站点也可以窃取(并立即使用)。

转载于:https://www.cnblogs.com/weiyinfu/p/6569266.html

BasicAuth和OAuth相关推荐

  1. 通过输入方式在Android上进行微博OAuth登录

    在微博认证方式里,基本的OAuth认证是必须要调整到跳转到第三方页面上进行授权的,例如下面的例子: 1.从http://open.weibo.com/wiki/index.php/SDK#Androi ...

  2. OAuth 2.0攻击面与案例总结

    本文整理了OAuth 2.0的攻击面+实际案例+辅助测试代码. OAuth流程 本文以两种广泛使用的方案为标准展开..如对流程不了解,请先移步学习: 理解OAuth 2.0 Authorization ...

  3. OAuth认证协议原理分析及使用方法

    twitter或豆瓣用户一定会发现,有时候,在别的网站,点登录后转到 twitter登录,之后转回原网站,你会发现你已经登录此网站了, 这种网站就是这个效果.其实这都是拜 OAuth所赐. OAuth ...

  4. shiro整合oauth

    前言 如果oauth原理还不清楚的地方,其参考这里.  一.基本思路脑图 二.客户端shiro配置 shiro配置文件 <?xml version="1.0" encodin ...

  5. 不要用JWT替代session管理(上):全面了解Token,JWT,OAuth,SAML,SSO

    通常为了弄清楚一个概念,我们需要掌握十个概念.在判断 JWT (Json Web Token) 是否能代替 session 管理之前,我们要了解什么是 token,以及 access token 和 ...

  6. 简述 OAuth 2.0 的运作流程

    本文将以用户使用 github 登录网站留言为例,简述 OAuth 2.0 的运作流程. 假如我有一个网站,你是我网站上的访客,看了文章想留言表示「朕已阅」,留言时发现有这个网站的帐号才能够留言,此时 ...

  7. OAuth 2 实现单点登录,通俗易懂!

    [文章来源]https://sourl.cn/hMw7yT 单点登录是多域名企业站点流行的登录方式.本文以现实生活场景辅助理解,力争彻底理清 OAuth2.0 实现单点登录的原理流程.同时总结了权限控 ...

  8. Spring boot、微服务、OAuth、OpenID的爱恨情仇!

    在本文中,我们学习如何使用Spring boot轻松配置和部署微服务,然后使用OAuth和OpenID保护它们. 在微服务体系架构中,其中较大的应用程序由多个较小的服务组成,每个服务都有自己的目标,它 ...

  9. java oauth sso 源码_基于Spring Security Oauth2的SSO单点登录+JWT权限控制实践

    概 述 在前文<基于Spring Security和 JWT的权限系统设计>之中已经讨论过基于 Spring Security和 JWT的权限系统用法和实践,本文则进一步实践一下基于 Sp ...

最新文章

  1. WebGoat教程学习(三)--Ajax安全
  2. 网易NAPM Andorid SDK实现原理--转
  3. linux shell less 命令---转
  4. 多线程之线程池的应用
  5. gradient 渐变
  6. 关于js渲染网页时爬取数据的思路和全过程(附源码)
  7. 老年痴呆与LDL-C 低密度脂蛋白
  8. h5输出文字write_免费下载:Write是用于手写的文字处理器
  9. 计算机能力提升研修总结ppt,信息技术能力提升研修总结
  10. python word自动化_python操作word,自动化办公
  11. python if elif else用法_python----if -- elif -- else 用法
  12. 栈(后缀表达式的理想数据结构)
  13. Linux内核中的PID散列表实例
  14. win10无法装载iso文件_iso镜像安装失败无法安装Windows10解决教程
  15. 让微信保持高度活跃的利器
  16. 新建 FrameMaker API 时引用目录的设置
  17. 数据结构 三:树(Tree)
  18. DNA转换为C语言,DNA (C语言代码)
  19. 【Android每周专题】触摸屏手势
  20. c语言移位函数intrins,单片机C语言实现NOP 循环移位

热门文章

  1. pure CSS3 triangle icon
  2. 源码-0105-Autoresizing
  3. cocos2dx对于强大的RichText控制
  4. 如何在Delphi 中调用C#生成的DLL类库
  5. [C# 3.0 入门] [第一章 Lambda表达式] 第三节:Lambda与匿名方法的区别(日文翻译)...
  6. 【南邮操作系统实验】页面置换算法(FIFO、LRU、OPT) Python 版
  7. 【Zepto笔记】Zepto.js
  8. springboot配置文件application.properties参阅文章
  9. DBSCAN聚类算法初探(五)
  10. 离职潮来袭,但为什么HR还是很难招到人?