使用公鑰私鑰加密實現單點登入(OSS)
Oauth2+Gateway+springcloud+springcloud-alibaba-nacos+jwt ,使用公鑰私鑰加密實現單點登入(OSS)
github地址點這裡
注意事項
-
GET:
http://localhost:9090/oauth/authorize?client_id=client_id&response_type=code
獲取授權碼,因為程式碼裡寫了重定向等引數,這裡就不需要寫了,測試時候發現,如果程式碼裡不寫重定向地址,在這裡寫重定向地址當做引數,會報錯.具體原因暫時不明 -
獲取token,POST:
http://127.0.0.1:9090/oauth/token
需要在 Basic Auth 中新增客戶端賬號和密碼(相當於把賬號和密碼進行base64編碼後,在前面拼接Basic
grant_type:authorization_code
,code:上一步中得到的code
-
重新整理token,POST:
http://127.0.0.1:9090/oauth/token
需要在 Basic Auth 中新增客戶端賬號和密碼(相當於把賬號和密碼進行base64後,在前面拼接Basic
,放入headers,(即Authorization:Basic [base64碼]),body中新增grant_type:refresh_token
,refresh_token:上一步中得到的refresh_token
-
POST: http://127.0.0.1:9091 請求資源帶上需要token,headers中新增
Authorization:Bearer [上一步得到的access_token]
-
校驗令牌: http://localhost:9090/oauth/check_token?token= [access_token]
-
密碼模式
-
client模式
-
使用令牌
- 攜帶
access_token
引數訪問受保護的資源,http://localhost:9090/xxx/xx?access_token=xxxxxxxxxxx
- 攜帶