java kerberos认证 过期_SpringBoot整合OAuth2做认证授权

本文介绍了如何在SpringBoot应用中配置OAuth2进行认证授权,并结合Kerberos实现用户登录验证。主要内容包括AuthorizationServer配置、数据库表结构、SecurityConfig设置、UserDetailsService实现、Token的存储和管理,以及ResourceServer资源服务器的配置。同时,文章讨论了如何在资源服务器上获取用户信息的方法。
摘要由CSDN通过智能技术生成

关于格式可以复制到markdown里看图片无关大局,我以后会注意整理下格式的

分割线____________________________________

# AuthorizationServer 配置 (认证服务器配置)目前只实现了用户Passwrod登录

![c2e4fbae5f0db68da8dfc3b0634beaec.png](en-resource://database/1268:0)

## 数据库

需要先配置创建数据库

![2c3bf68c357e0d0826fb2d673dfbd9f2.png](en-resource://database/1270:0)

oath_access_token 表 存储access_token

oauth_client_details 存储客户端的信息 例如clientId clientSecret scope(客户端拥有的权限 因为我是自己后台和第三方所以这个无所谓) authorized_grant_type(这个客户端可以使用的认证方式oauth的那四种以逗号分割)

web_server_redirect_uri 授权码模式认证的回调地址

oauth_refresh_token 存储用户用来刷新的token

这些表官网应该有实在不行https://www.funtl.com

还要一些自己的基础数据库根据需求自己建

redis也顺便配置一下就可以了

## 配置SecurityConfig

第一个就是注册一个自己的用户登录校验处理器 也是就是UserDetailsService和密码加密器

``` java

@Override

protected void configure(AuthenticationManagerBuilder auth) throws Exception {

auth.userDetailsService(myUserDeatisService)

.passwordEncoder(passwordEncoder);

}

```

第二个就是配置一些 url的放行和session的配置如果是适配app小程序什么的就不用配置session了 还要表单登录和csrf 有一些配置是复制别人的我也没看懂

``` java

@Override

protected void configure(HttpSecurity http) throws Exception {

http

.authorizeRequests()//这句话的意思是下面这些都是授权的配置

.antMatchers("/photo/**/**","register/**/**","/swagger-ui.html#/**","/v2/api-docs", "/configuration/ui", "/swagger-resources", "/configuration/security", "/swagger-ui.html", "/webjars/**","/swagger-resources/configuration/ui","/swagge‌​r-ui.html").permitAll() //这句话是这个url不需要用户验证即可访问

.and()

.authorizeRequests().anyRequest().authenticated()

.and()

.sessionManagement()

.sessionCreationPolicy(SessionCreationPolicy.IF_REQUIRED)

.and()

.httpBasic()

.and()

.cors()

.and()

.csrf().disable();//关闭csrf的跨站防护功能

http

.authorizeRequests()

.anyRequest().authenticated()

.and()

.formLogin().and()

.csrf().disable()

.httpBasic();

}

```

第三个配置就属于复制的看不懂有知道评论说一下

``` java

@Override

public void configure(WebSecurity web) throws Exception {

web.ignoring().antMatchers("/favor.ioc");

}

```

第四个就是创建一个authenticationManager放到容器中这个是authorizationConfig要的不明白为什么要配置

``` java

@Bean

@Override

public AuthenticationManager authenticationManagerBean() throws Exception {

return super.authenticationManagerBean();

}

```

# AuthorizationConfig

第一个就是决定你的用户的Token的存放地址的 mys

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值