2017-07-25 28 views

回答

0

如果你有一個JavaScript應用程序,你應該使用OAuth2隱式流程,它給你一個訪問令牌及其到期時間。因此,請勿使用與刷新令牌一起使用的Autorization Code Grant流程 - 它需要一個客戶端密鑰,您無法在瀏覽器中保持安全。

當您獲取訪問令牌時,使用window.setTimeout()安排其刷新。您可以使用請求參數prompt=none(請參閱OpenID Connect RFC)在無用戶交互的情況下刷新它。如果令牌在常規超時之前失效,您將從後端得到「HTTP 401 Unauthorized」響應。在這種情況下,檢查令牌有效性並在必要時獲取新的令牌有效性。

將訪問令牌作爲cookie並不是一個好主意,因爲它會連接到每個請求(具有相同的域,端口和可能的路徑),這可能是一個安全問題。保留在sessionStorage

+0

刷新令牌它需要客戶端的祕密。但我一直在代理服務器上保持客戶端的祕密。 – Avesh

相關問題