OAuth2概念&Spring Security

OAuth2协议,标准(接口):

是一种授权协议,他的主要作用是为了提供认证和授权的标准。
与以往的授权模式不同的是OAuth2授权不会使第三方触及到用户的账号信息,即,第三方无需使用用户名和密码就可以申请获得该用户资源的授权,因此OAuth2是安全的。

Spring Security框架实现OAuth2协议

spring security 是一个安全框架,能够为spring企业应用系统提供声明式的安全访问控制。spring security基于Servlet过滤器,Ioc和Aop,为web请求和方法调用提供身份确认和授权处理,避免了代码耦合,减少大量重复代码操作。

概念:

第三方应用程序:拿我们的制作软件来说,我们需要访问别的软件的资源,对于我们来说,别的软件就是第三方。而对于别的软件来说,我们又是第三方。

HTTP服务提供商:我们的产品以及别的软件,都可以称之为HTTP服务提供商

资源所有者:又称之为用户

用户代理:比如浏览器,代替用户去访问这些资源

认证服务器:服务器提供商专门用来提供认证的服务器,简单来说就是登录功能(验证用户的账号密码是否正确,以及分配权限)

资源服务器:服务提供商存放用户生成的资源的服务器。他与认证服务器可以是同一台服务器,也可以是不同的服务器。

AppId应用程序软件编号
AppSecret密钥,相当于密码
access_token访问令牌,这个令牌每次都会产生一个新的,只在本次请求中生效
refresh_token刷新令牌,去认证服务器,换取一个新的访问令牌
client_id自己的服务向第三方服务注册时给第三方服务的,用来表示自己服务的身份的id
client_secret自己服务对应的在第三方服务上的密钥

举例:使用酷狗软件时,登录qq,显示qq的头像,昵称和性别。实现步骤:

1,酷狗重定向到qq的授权码页面。
2,输入qq的账号或者密码。
3,如果正确,返回给酷狗code验证码。
4,酷狗拿着code去qq的认证服务器,如果code正确,返回给酷狗令牌。
5,酷狗拿着令牌到qq的资源服务器,获取规定的固定资源。
如上步骤中酷狗是不知道qq的账号和密码的,这也就是安全性的体现。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值