1.近几天在学习OAuth2协议,实际开发中用的最多的就是授权码模式
 
2.OAuth2的授权码模式流程:首先是用户去访问资源服务器,服务器会给用户一个授权码;用户根据授权码去访问认证服务器,服务器验证授权码是否正确,如果正确就会给用户以一个令牌;用户根据令牌再去访问资源服务器,验证令牌无误后,用户就可以访问
 
3.在进行OAuth2项目的时候会导入springcloud以及springboot的包,这个时候版本要保持一致,不然会出现,版本错误java.lang.NoSuchFieldError: BEST_MATCHING_HANDLER_ATTRIBUTE
 
4.org/springframework/security/web/servlet/util/matcher/MvcRequestMatcher报错怎么解决
原因:是自己在同时有springboot和springcloud依赖是没有引入父依赖,再就是应该导入父依赖
 
5.Postman的使用
  1. 作用:HTTP接口测试工具
  2. 添加请求类型,以及请求网址,还有对应的Authentication和body进行测试
 
6.总结:这几天都在弄OAuth2,但是出现很多问题,都是自己细节上面的问题,也还是自己知识量不足,多动手验证,心态要平和;主要是熟悉了OAuth2的认证流程,以及简单的授权码模式代码实现
 
7.反思:其实不管在哪个工程里面的用户实体类都需要实现UserDetails接口,有着用户的获取权限方法,是否被锁,是否过期,是否禁止等等父类的方法;
在角色实体类中需要继承GrantedAuthority,以及继承获取自己权限名的方法;在之前的Jwt实现加密的时候是使用非对称RSA加密,认证服务器使用私钥加密,公钥解密;在OAuth2中是分为认证服务配置以及资源服务配置;在权限配置中需要配置自己的用户密码、密钥、授权范围、授权类型以及重定向地址;资源服务器相当于之前的配置类;在自定义登录逻辑中就是授权自己的角色权限,以及最开始的security登录账号和密码;在securityConfig中拦截发送的http请求
 
8.复盘:主要是对代码的理解
  1. 资源服务器的作用:为自定义的controller提供资源,首先是认证所有请求,过滤访问URI
  2. 授权服务器作用:设置客户的信息:客户端id,密钥,授权类型,授权范围,以及重定向地址
  3. 安全服务器:拦截访问请求
 

7.OAuth2的更多相关文章

  1. Spring Security OAuth2 开发指南

    官方原文:http://projects.spring.io/spring-security-oauth/docs/oauth2.html 翻译及修改补充:Alex Liao. 转载请注明来源:htt ...

  2. OAuth2 理解

    OAth2 是为了某个应用向第三方应用开放服务时,控制权限的. 因为不可以直接将账户体系开放出去,要求重新登录. 其实本质是让用户在客户端来判断是否要给该应用开放平台的权限,如果用户同意,那么可以拿到 ...

  3. SimpleSSO:使用Microsoft.Owin.Security.OAuth搭建OAuth2.0授权服务端

    目录 前言 OAuth2.0简介 授权模式 (SimpleSSO示例) 使用Microsoft.Owin.Security.SimpleSSO模拟OpenID认证 通过authorization co ...

  4. 分享一个单点登录、OAuth2.0授权系统源码(SimpleSSO)

    SimpleSSO 关于OAuth 2.0介绍: http://www.ruanyifeng.com/blog/2014/05/oauth_2_0.html 系统效果: 登录界面: 首页: 应用界面: ...

  5. [转]Code! MVC 5 App with Facebook, Twitter, LinkedIn and Google OAuth2 Sign-on (C#)

    本文转自:https://www.asp.net/mvc/overview/security/create-an-aspnet-mvc-5-app-with-facebook-and-google-o ...

  6. 【OAuth2.0】Spring Security OAuth2.0篇之初识

    不吐不快 因为项目需求开始接触OAuth2.0授权协议.断断续续接触了有两周左右的时间.不得不吐槽的,依然是自己的学习习惯问题,总是着急想了解一切,习惯性地钻牛角尖去理解小的细节,而不是从宏观上去掌握 ...

  7. 深入理解OAuth2.0协议

    1. 引言 如果你开车去酒店赴宴,你经常会苦于找不到停车位而耽误很多时间.是否有好办法可以避免这个问题呢?有的,听说有一些豪车的车主就不担心这个问题.豪车一般配备两种钥匙:主钥匙和泊车钥匙.当你到酒店 ...

  8. ABP中使用OAuth2(Resource Owner Password Credentials Grant模式)

    ABP目前的认证方式有两种,一种是基于Cookie的登录认证,一种是基于token的登录认证.使用Cookie的认证方式一般在PC端用得比较多,使用token的认证方式一般在移动端用得比较多.ABP自 ...

  9. OAuth2.0 四种授权模式

    OAuth2.0简单笔记(四种授权模式) 金天:坚持写东西,不是一件容易的事,换句话说其实坚持本身都不是一件容易的事.如果学习有捷径,那就是不断实践,不断积累.写笔记,其实是给自己看的,是体现积累的一 ...

  10. 微信开放平台开发——网页微信扫码登录(OAuth2.0)

    1.OAuth2.0 OAuth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用. 允许用户提供 ...

随机推荐

  1. UI自动化之【maven+selenium环境搭建】

    一.下载maven包 官网: http://maven.apache.org/download.cgi 二.配置maven环境变量  配置完之后验证一下:(若出现以下信息可看到maven的版本号就表示 ...

  2. 线程池使用、countDownLatch、以及数据库批量插入 添加配置优化插入与计算

    //新建线程池ThreadPoolExecutor cpuThreadPoolExecutor = ThreadUtil.getCpuThreadPoolExecutor(); //使用Countdo ...

  3. 在vscode中用tsc编译ts文件的时候报错,tsc : 无法加载文件,因为在此系统上禁止运行脚本;SecurityError

    1. TypeScript安装成功,在C盘的Administrator目录下,运行 tsc -v 也可看到TypeScript的版本.  2. 但在vscode中的时候运行tsc 编译ts文件的时候报 ...

  4. scroll-view 横向滚动无效

    scroll-view的内层view元素需要: display: inline-block scroll-view的外层元素需要: white-space: nowrap 使得内部组件不换行.

  5. windows环境下本地项目(或gitlab上拉取项目)在Jenkins上自动打包部署 超超超详细!!!!!

    一.环境准备 1.下载jdk,官网:http://www.oracle.com/ 2.下载Jenkins,官网:https://www.jenkins.io/ 3.下载Tomcat,官网:http:/ ...

  6. Python数据可视化,自适应浏览器

    pyecharts生成的html默认是靠左上显示的需要生成的文件居中显示,且能根据浏览器窗口大小自动调整需要修改html当然,如果你是熟悉html,且只是临时少量生成表格的话,每次生成完后手动修改ht ...

  7. 2021.06.21 onmouseover和onmouseleave事件对比

    在重新巩固js基础的过程中,分别使用onmouseover和onmouseleave事件却导致了不同的效果,但是在之前的记忆中,这两者确实是一样的哈,因此探究一下产生不同效果的原因. 在使用onmou ...

  8. el-select的正确用法

    下拉框应该是大家非常常用的一个组件,表单几乎离不开它,可是用了三年后我突然发现我一直没有正确的使用它..... ElementUI 组件一直让我纠结的地方是 绑定的值对我来说经常需要绑定值的其他字段信 ...

  9. NX二次开发读属性/表达式封装函数

    int Read_ATTR_Type(int ObjTag, char* Attr_Title); //读取属性返回属性类型 string Read_ATTR_StringValue(int ObjT ...

  10. KERNEL1

    WHAT IS KERNEL KERNEL是一个负责连接计算机硬件与软件的一个模块,当软件对硬件进行调用的时候,或者发送一些置零的时候,KERNEL负责将这些指令转化并发送给CPU或者计算机中其他硬件 ...