您好,登錄后才能下訂單哦!
SpringBootSecurity中OAuth2.0的加密配置是怎樣的,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
非常的簡單,主要目的是用來熟悉OAuth3.0 申請授權的整個流程,這個簡單的示例肯定是不能直接用于生產環境的,還有很多需要改進的地方,我們來總結一下:
1、只演示了授權碼的形式,其它的三種(隱藏式,密碼式,客戶端憑證)并沒有熟悉
2、密碼和秘鑰是未加密的
3、oauth的客戶端配置,包括id,秘鑰等信息是在內存中配置死的,無法動態增加
4、token也是放在內存中存儲的,無法手動廢止
5、jwt的生成使用的是簡單的秘鑰形式,最好使用非對稱加密的方式,更加安全可靠
6、令牌的申請權限配置不太合理
7、資源服務中的jwt和令牌驗證配置也不太靈活
8、授權流程應該結合eureka開發和使用
9、沒有驗證令牌中繼特性,等等等等
從上面列舉的問題可以看出,就算示例代碼能運行,流程也清楚,但是要學會使用Spring Cloud Security,尤其要在生產環境使用,還需要對每個細節都能掌握和了解才行。
首先我們來改進第一個地方,實現加密配置。大家知道用戶注冊之后,存儲用戶資料的時候,用戶密碼在數據庫中最好是加密后再保存,同樣的道理,oauth的客戶端信息最終也是要存儲在數據庫而不是直接在代碼中配置死的,它的secret字段也應該加密后再存儲,下面在授權服務中來配置加密,首先修改security配置類,配置加密方式:
然后將登陸用戶的密碼配置為加密:
然后修改授權配置類,將客戶端配置中的secret配置為加密:
這樣加密配置就完成了。資源服務不用做任何修改。
配置上面三個加密的地方后,加密就配置好了,下面來測試一下,其實測試流程與前面的一樣,客戶端感知不到,得到的access_token如下:
最終訪問結果如下:
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。