java 32位授权码_Java实现OAuth2.0授权码方式
Java实现OAuth2.0授权码方式
前面介绍了OAuth2.0和授权方式,可以参考以下文章:
今天就用Java来验证OAuth2.0授权方式的授权码式,我们Spring Cloud的OAuth来实现认证和资源服务器,以下是Web Security的配置。
web security
我们另外要实现一个认证服务器,其实很简单我们做个配置类,继承AuthorizationServerConfigurerAdapter类,并添加注解EnableAuthorizationServer,我们配置四种认证方式,一个认证服务器基本完成,以下是具体代码:
认证服务器
我们再配置个资源服务器,就是我们的应用服务,这个很简单了,一个spirngboot的web项目,在配置文件中需要配置token信息的地址:
security的配置
我们的一个测试Controller,配置一个路径/info
controller
我们的认证服务器监听8080端口,资源服务器监听8082端口,下面就验证授权模式。
获取授权码
在浏览器中输入以下地址,页面会跳转到登录页面,用户名和密码是我们在代码中设置的java/java。
http://localhost:8080/oauth/authorize?response_type=code&client_id=client&rediredirect_uri=http://localhost:8082/info
登录页面
登录后,系统会跳转到授权页面,见面如下:
授权
授权后会跳转到设置的跳转页面并且带有code=XXXX,这个后面的code的值就是我们需要的认证码,我们下面就用这个认证码获取token。
获取认证码
获取token
现在就往认证服务器发送一个post请求,带上我们的授权码,用上文介绍的httpClient(是时候用idea的httpclient功能了)发送请求,具体如下:
获取token
发送请求后,下面就是我们获取到的access token和refresh token。
获取到的token
获取资源
我们用httpClinet发送一个get请求,带上我们的token,添加Authorization头信息,值为Bearer+token。
获取资源
这个请求返回一个认证信息,具体如下:
认证信息
总结
以上是生活随笔为你收集整理的java 32位授权码_Java实现OAuth2.0授权码方式的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: java邻接表无向图的创建_邻接表无向图
- 下一篇: Java 怎么 get char_Jav