簡體   English   中英

在哪里存儲社交登錄 Oauth2 訪問令牌

[英]Where to store Social Login Oauth2 access tokens

我正在嘗試構建一個 Spring Boot REST API,它將實現社交登錄(Spotify)。 使用 Spotify 成功登錄后,我想將 Spotify access_token 存儲在我生成的 JWT 令牌中,以便能夠訪問我的后端。 我需要一個 Spotify 訪問令牌才能對 Spotify 進行 API 調用(幾乎每個對我的應用程序的請求都需要調用 Spotify API)。 在 JWT 中存儲對外部服務的訪問令牌是一種好習慣嗎? 或者我應該將訪問令牌存儲在我的數據庫中並在需要時讀取它? 也許您有關於如何實現將調用外部服務的無狀態 REST API 的任何指南?

通常,我將訪問令牌存儲在 Redis 中,它比 DB 快。 如果你使用 DB,每個任務都會鏈接 DB 兩次,一次用於獲取用戶信息(如用戶名和密碼),一次用於讀取訪問令牌。 任務頻率很小的時候,沒問題。 但是當請求的頻率越來越多時,存儲在DB中,會非常浪費性能。 使用Redis還有一個好處,就是有過期時間。 所以,我的大部分項目,我使用 Redis 存儲令牌。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM