如題,使用Owin實作OAuth2,生成access_token后如何存入資料庫?存入資料庫后如何進行驗證?
我查了很多資料,很多文章里只是簡單的使用ClaimsIdentity,然后再控制器加個Authorize屬性,
并未將token持久到資料庫或者快取服務器中,只是將用戶資訊存在了記憶體里,當使用nginx等做負載均衡,client肯定是無法正常訪問的。我問的可能有點亂,但是希望各位能夠解答我的疑問。
uj5u.com熱心網友回復:
看了很多例子,都是針對單服務器的,沒有看到過分布式的方案,很好奇你們是怎么做的,不使用asp.net identity 自己實作一個過濾器嗎?uj5u.com熱心網友回復:
今天查了些資料,發現access token 并不需要做持久化,refresh token才需要,access token 本身包含了用戶資訊,owin只是將用戶資訊用machine key加密然后用base64轉換了一下。但是當授權服務器和資源服務器不是同一臺機器時,需要另外配置。目前在找如何自己用別的加密演算法加密和解密accesstoken。uj5u.com熱心網友回復:
樓主解決分布式的問題了嗎?uj5u.com熱心網友回復:
自己造一個,我使用的是 加密 + redis實作uj5u.com熱心網友回復:
的確應該用redis之類的快取區實作。
畢竟token是要過期的。放資料庫,沒有什么意義,還增加讀寫的麻煩。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/141486.html
標籤:C#
