OAuth2 oauth2
程序员文章站
2022-06-09 08:01:36
...
最近对OAuth2进行了研究,官网地址:http://oauth.net/2/
发现支持java的有好多个,综合考虑最终选择了Spring Security for OAuth
wiki地址:https://github.com/spring-projects/spring-security-oauth/wiki/oAuth2
spring-security-oauth2-2.0.0.BUILD-SNAPSHOT.jar中比较重要的地方
一、org.springframework.security.oauth2.config.xml这个包主要用来解析配置文件
1.AuthorizationServerBeanDefinitionParser授权服务器
2.ResourceServerBeanDefinitionParser资源服务器
二、org.springframework.security.oauth2.provider.endpoint这个包主要用来提供服务
1.AuthorizationEndpoint主要是用来获取code。当然如果支持ImplicitGrant,也可以直接获取token,适用于无Server应用。
2.TokenEndpoint主要是用来获取token。当然如果支持RefreshToken,也可以用来当token过期后使用该接口刷新token。
三、org.springframework.security.oauth2.common.exceptions这个包列出了OAuth2中所有可能产生的异常类型以及序列化反序列化
1.OAuth2Exception定义了OAuth2中的所有异常情况
2.OAuth2ExceptionJackson1Serializer异常序列化类,需要扩展自定义其他一些异常情况
四、filter
1.org.springframework.security.web.authentication.preauth.AbstractPreAuthenticatedProcessingFilter验证登陆用户信息2.org.springframework.security.oauth2.provider.client.ClientCredentialsTokenEndpointFilter验证客户端信息
发现支持java的有好多个,综合考虑最终选择了Spring Security for OAuth
wiki地址:https://github.com/spring-projects/spring-security-oauth/wiki/oAuth2
spring-security-oauth2-2.0.0.BUILD-SNAPSHOT.jar中比较重要的地方
一、org.springframework.security.oauth2.config.xml这个包主要用来解析配置文件
1.AuthorizationServerBeanDefinitionParser授权服务器
2.ResourceServerBeanDefinitionParser资源服务器
二、org.springframework.security.oauth2.provider.endpoint这个包主要用来提供服务
1.AuthorizationEndpoint主要是用来获取code。当然如果支持ImplicitGrant,也可以直接获取token,适用于无Server应用。
2.TokenEndpoint主要是用来获取token。当然如果支持RefreshToken,也可以用来当token过期后使用该接口刷新token。
三、org.springframework.security.oauth2.common.exceptions这个包列出了OAuth2中所有可能产生的异常类型以及序列化反序列化
1.OAuth2Exception定义了OAuth2中的所有异常情况
2.OAuth2ExceptionJackson1Serializer异常序列化类,需要扩展自定义其他一些异常情况
四、filter
1.org.springframework.security.web.authentication.preauth.AbstractPreAuthenticatedProcessingFilter验证登陆用户信息2.org.springframework.security.oauth2.provider.client.ClientCredentialsTokenEndpointFilter验证客户端信息
推荐阅读
-
详解Springboot Oauth2 Server搭建Oauth2认证服务
-
使用Spring Security OAuth2实现单点登录
-
Spring Security 解析(七) —— Spring Security Oauth2 源码解析
-
springboot2.x实现oauth2授权码登陆
-
如何用Spring Security OAuth2 实现登录互踢,面试必学
-
基于SpringBoot整合oauth2实现token认证
-
Spring Security OAuth2 SSO
-
限制页面只能由微信内置浏览器打开,在其他浏览器打开跳转到Oauth2页面
-
基于Spring Security的Oauth2授权实现方法
-
OAuth2简易实战(三)-JWT