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关于父亲节的代码_关于父亲节的经