OAuth2客户端springsecurity5

神经病的缥缈之旅

介绍

本意是想从小说角度介绍各种组件使用方式,如果大家不喜欢可以直接跳过文字内容中,粘贴代码就好了哈。

一个2B程序猿可以进入电脑中的虚幻世界能力并且拥有一个非常不靠谱的系统。。。,看他在虚幻世界叱咤风云,成就现在世界中霸道总裁。

沈静兵创世界

       <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-oauth2-client</artifactId></dependency><dependency><groupId>org.thymeleaf.extras</groupId><artifactId>thymeleaf-extras-springsecurity5</artifactId></dependency>
@Configuration
@Order(3)
public class SecurityConfig extends WebSecurityConfigurerAdapter {@Overridepublic void configure(HttpSecurity http) throws Exception {http.csrf().disable();http.antMatcher("/**").authorizeRequests().antMatchers("/").permitAll().anyRequest().authenticated().and().logout() //提供注销的支持。这是在使用WebSecurityConfigurerAdapter时自动应用的。.logoutUrl("/xx/logout") //触发注销发生的URL(默认为 /logout)。如果启用了CSRF保护(默认),那么请求也必须是POST。//service= 退出后页面地址.logoutSuccessUrl("http://localhost:9099/firebirds-plume/logout?service=http://127.0.0.1:10011/sanctr/talrashas-brace-template/v1/welcome") //注销后要重定向到的URL。默认是/login?logout。.and().oauth2Login();}
}

配置说明

spring:security:oauth2:client:registration:customa:#客户端IDclient-id: 3716504419831808#客户端密码client-secret: 123456scope: read,writeauthorization-grant-type: authorization_code#重定向地址注意:/login/oauth2/code/ 为固定格式code后可自定义redirect-uri: http://127.0.0.1:10011/sanctr/talrashas-brace-template/v1/login/oauth2/code/welcomeprovider:customa:#获取CODEauthorization-uri: http://localhost:9099/firebirds-plume/oauth2.0/authorize#获取TOKENtoken-uri: http://localhost:9099/firebirds-plume/oauth2.0/accessToken#刷新TOKENuser-info-uri: http://localhost:9099/firebirds-plume/oauth2.0/profileuser-name-attribute: idthymeleaf:cache: false

使用方法

  • 示例
      @Autowiredprivate OAuth2AuthorizedClientService authorizedClientService;@GetMapping("/welcome")public ResultDTO welcome(OAuth2AuthenticationToken authentication){OAuth2AuthorizedClient authorizedClient =this.authorizedClientService.loadAuthorizedClient(authentication.getAuthorizedClientRegistrationId(),authentication.getName());OAuth2AccessToken accessToken = authorizedClient.getAccessToken();System.out.println("获取TOKEN----"+accessToken.getTokenValue());System.out.println("获取PrincipalName----"+authorizedClient.getPrincipalName());System.out.println("获取用户信息----"+authentication.getPrincipal());return new ResultDTO(ErrorCodeEnum.SUCCESS, "欢迎登录");
    

    }


- ##### 退出示例
```java@GetMapping("/xx/logout")public String logout(){System.out.println("logout---------------------已经注销");return "logout";}
  • 重定向获取CODE
 /*** @Description 重定向获取CODE* @Return ResultDTO* @Author 于洪波* @Date 2020/07/24*/// /login/oauth2/code/ 为固定值code后可任意写@GetMapping(value="/login/oauth2/code/welcome", produces = "application/json;charset=utf-8")public ResultDTO welcome(Model model) {return new ResultDTO(ErrorCodeEnum.SUCCESS, "欢迎光临");}

资源下载:https://download.csdn.net/download/yuhongbo0/12741863

分享请标明出处,谢谢

OAuth2客户端springsecurity5 - 神经病的缥缈之旅相关推荐

  1. 你知道吗?OAuth2客户端有两种,认证方式有七种。

    OAuth2客户端按照它们与授权服务器进行安全认证的能力可以分为机密类型(Confidential)和公共类型(Public). 机密类型的自身会有个密码凭据,比如Web服务器后端程序:而公共类型则没 ...

  2. 定时器(@Scheduled)使用feign夸服务调用,Oauth2 客户端client_credentials模式

    定时器(@Scheduled)使用feign夸服务调用,Oauth2 客户端client_credentials模式 应用场景 定时器(@Scheduled)使用feign夸服务调用(A-->B ...

  3. SpringBoot + Spring Security Oauth2 客户端授权

    框架使用SpringBoot + Spring Security Oauth2  主要完成了客户端授权  可以通过mysql数据库读取当前客户端表信息进行验证,token存储在数据库中 1.引入依赖 ...

  4. OAuth2客户端明文和用户密码为密文

    一.问题描述: 使用Spring-security-0Auth2:2.5.1 版本,进行用户认证时,一直出现问题: {"error": "invalid_client&q ...

  5. 从 ES 到 Kylin,斗鱼客户端性能分析平台进化之旅

    一.背景 斗鱼是一家面向大众用户的在线直播平台,每天都有超大量的终端用户在使用斗鱼各客户端参与线上互动.伴随业务的迅猛发展,斗鱼需要对客户端采集到的性能数据进行统计和分析,开发出具有多维度分析图表和数 ...

  6. OAuth2的理解与客户端开发

    目录 OAuth2 四种授权模式 授权码模式(常用)`code` 简化模式 `token` 密码模式 `password` 客户端模式 `client_credentials` OAuth2 标准接口 ...

  7. OAuth2授权客户端访问资源服务

    OAuth客户端访问资源服务 一.简介 在单点登录一文,我们是通过注解@EnableOAuth2Sso实现单点登录的,我们了解到OAuth2获取token的方式是通过OAuth2RestOperati ...

  8. 使用Spring Security OAuth2实现单点登录(SSO)系统

    一.单点登录SSO介绍   目前每家企业或者平台都存在不止一套系统,由于历史原因每套系统采购于不同厂商,所以系统间都是相互独立的,都有自己的用户鉴权认证体系,当用户进行登录系统时,不得不记住每套系统的 ...

  9. Spring boot使用Spring Security和OAuth2保护REST接口

    在本文中,我将会演示SpringSecurity+OAuth2如何去保护SpringBoot上的RESTAPI端点,以及客户端和用户凭证如何存储在关系数据库中.因此,我们需要做到以下几点: 配置Spr ...

最新文章

  1. linux下查询端口,进程的状态以及netstat的参数意义
  2. mysql 主从同步不一致_涨知识!MySQL 主从同步原理原来是这样的
  3. Python2.7安装ncmbot时提示:Microsoft Visual C++9.0 is required
  4. 运筹学的课程笔记 markov decision process
  5. Linux下制作和使用静态库和动态库
  6. 自定义字符串查找函数c语言,(C语言自定义函数,/*编写函数实现在字符串pStr中查找子串pSub int subString( char* pStr, char* pSub);...
  7. Hello Blazor:(1)像ASP.NET WebForm一样写代码
  8. unlink(file_name)
  9. vs2012 编译cocos2d-x项目报error MSB3073
  10. 计算机培训实践反思模板,基于问题解决式课堂教学模式的反思
  11. [在线小说系统源码]精品微信小程序小说阅读器+后台管理系统|前后分离VUE[包运行成功]
  12. mysql身份证校验码_javascript身份证验证代码
  13. 【色彩管理】RGB色彩模式详解
  14. Windows下Python的安装与配置
  15. 安卓机顶盒安装软件教程
  16. 微信小程序 + 腾讯位置服务SDK 实现路线规划
  17. WIN11 TortoiseSVN 无论什么操作,都报同一个错误:请求的操作需要提升
  18. MysQL索引与事务
  19. C# http请求挂代理
  20. 总结了一套比较新的面试题挺全面的,多方面都有涉及到

热门文章

  1. 破除对于XP半开连接数限制的误解
  2. Linux系统(Ubuntu)编写C语言程序
  3. DialogBox使用例子
  4. 计算机英语二考研用书,考研英语二怎么准备?记过来人详细经验
  5. FT2232器件Bit Mode函数
  6. exp table oracle,oracle中exp,imp的使用详解
  7. Java-SSM流浪宠物管理系统
  8. 超高性价比 光纤互联解决方案良心推荐
  9. C++程序员发展方向
  10. 常见软件系统的供应商