Springboot OAuth2 自定义验证

一,业务背景

      公司业务需要使用ldap验证,原来的用户名密码验证无法满足需求,又不想使用springboot实现的ldap验证,因为我们有一些特殊的逻辑,那么我们就需要自己实现一套登录验证逻辑,下面就是授权服务器的具体实现,首先是引入依赖:


    org.springframework.cloud
    spring-cloud-starter-oauth2

在springboot oauth2中,比如表单登录,usernamepasswordFilter是用来拦截请求并生成Authentication的,后续有相应的Provider来处理,provider的suport方法就是用来校验是否该他来处理,处理完成之后则是进行走handler颁发token

后续操作中,我们都会带着token来进行操作,OAuth2AuthenticationProcessingFilter则是解析Header和Param来获取token,如果没有token则走权限验证一套,如果有token则验证token的有效性

二,TokenStore实现

tokenStore这里采用JWT的方式:

package com.xxx.itt.123.auth.config;

import jdk.nashorn.internal.parser.Token;
import org.springframework.context.annotation.Bean;
import org.springframew

你可能感兴趣的:(Java从开发到设计,java,oauth2)