SpringSecurity实战(陈木鑫)读书笔记

第13章 用SpringSocial实现OAuth对接

OAuth解决了在用户不提供密码给第三方应用的情况下,让第三方应用有权获取用户在另一台资源服务器上的数据

13.1 OAuth简介

13.1.1 什么是OAuth?

OAuth(Open Authorization)是一种 资源服务器授权第三方应用访问用户在该资源服务器上存储资源的一直授权机制,由于在整个授权过程中,第三方应用都无须触及用户的密码就可以取得部分资源的使用权限

OAuth第一个版本诞生于2007年12月,并于2010年4月正式被IETF作为标准发布(编号RFC 5849)。由于OAuth1.0复杂的签名逻辑以及单一的授权流程存在较大缺陷,随后标准工作组又推出了 OAuth2.0草案,并在2012年10月正式发布其标准(编号RFC 6749)。OAuth2.0放弃了OAuth1.0中让开 发者感到痛苦的数字签名和加密方案,使用已经得到验证并广泛使用的HTTPS技术作为安全保障手 段。OAuth2.0与OAuth1.0互不兼容,由于OAuth1.0已经基本退出历史舞台,所以下面提到的OAuth都是指OAuth2.0。

13.1.2 OAuth的运行流程

想要理解OAuth的运行流程,则必须要认识4个重要的角色

  • Resource Owner:资源所有者,通常指用户,例如每一个QQ用户
  • Resource Server:资源服务器,指存放用户受保护资源的服务器,通常需要通过Access
    Token(访问令牌)才能进行访问。例如,存储QQ用户基本信息的服务器,充当的便是资源服务器的
    角色。
  • Client:客户端,指需要获取用户资源的第三方应用,如CSDN网站
  • Authorization Server:授权服务器,用于验证资源所有者,并在验证成功之后向客户端发放相关访问令牌。例如,QQ授权登录页面。
    SpringSecurity实战(陈木鑫)读书笔记_第1张图片
    oauth2的四种模式 :https://blog.csdn.net/hc1285653662/article/details/126277712

13.2 QQ互联对接准备

你可能感兴趣的:(#,SpringSecurity,读书笔记,SpringSecurity)