2016-08-04 119 views
2

我想我使用授權代碼授權類型來獲得OAuth2的流量。 資源所有者登錄到服務器,然後通過授權碼重定向到客戶端。然後,客戶端使用授權碼向授權服務器查詢訪問令牌和刷新令牌。這是我感到困惑的地方。OAuth2使用授權代碼刷新令牌的目的

當訪問令牌到期時,客戶端應該使用授權代碼還是刷新令牌來獲取新的訪問令牌?如果您有授權碼,爲什麼還要刷新令牌?

我不是在尋找一個答案說「刷新令牌是可選的」因爲我寫這篇服務器,亞馬遜Alexa的,需要刷新令牌和授權碼交付式的服務。

回答

1

如果oauth2服務器是根據授權代碼RFC 6749 Section 10.5的安全原則編寫的,則無法重新使用它來獲取第二個access_token。

授權碼必須是短暫且一次性的。如果授權服務器觀察到多次嘗試交換訪問令牌的授權碼,則授權服務器 應該嘗試撤銷已根據 受損的授權碼授予的所有訪問令牌。

如果允許,refresh_token可以使用refresh_token授權交換爲另一個access_token和新的refresh_token。在這種情況下,如果refresh_token仍然有效,用戶不必重新進行身份驗證。

+0

謝謝,我沒有讀得夠近。 –

相關問題