学习开源spring security jwt

2019-02-19  本文已影响0人  左洁

jwt理解:授权服务器颁发的令牌,包含关于用户或者客户的元数据和声明(claims)通过检查签名,期望的颁发者(issuer),期望的接收人aud(audience),或者scope, 资源服务器可以在本地校验令牌 通常实现为签名的JSON Web Tokens(JWT)

工程结构:

包名:

org.simple.web.jwt.annotation : 封装继承WebSecurityConfigurerAdapter,自定WebSecurityConfig

org.simple.web.jwt.config:spring security配置文件

org.simple.web.jwt.filter : 

JwtAuthenticationTokenFilter负责处理jwt事情

UserLoginFilter:用户登录操作

org.simple.web.jwt.property:jwt配置文件

核心配置类

配置

SimpleAuthenticatingSuccessHandler校验成功之后后面处理

SimpleAuthenticatingFailureHandler校验失败之后后面处理

JwtService通过generateToken生成token,通过validateToken校验token

postman请求:

http://localhost:8080/auth/token请求头aContent-Type需要配置

用户名和密码保持一样,因为PasswordEncoder是md5模式

org.springframework.security.authentication.dao.AbstractUserDetailsAuthenticationProvider#authenticate方法调用org.springframework.security.authentication.dao.AbstractUserDetailsAuthenticationProvider#additionalAuthenticationChecks校验用户名和密码是否正确

登录成功之后,请求http://localhost:8080/index/index

参考源码地址

上一篇下一篇

猜你喜欢

热点阅读