2

我知道該代碼是用於真正長壽命訪問令牌的短期標記交換。我已經通過了Oauth 2.0,但找不到這個信息,所以在這裏問:OAuth 2.0授權代碼中「代碼」的生命週期授權代碼授權代碼Grant

  • 什麼是代碼的生命週期?
  • 僅供一次性使用嗎?
  • 代碼交換多少次才能獲取訪問令牌?
  • 在爲該代碼提供訪問令牌後,代碼會發生什麼情況?

我正在使用oAuth 2.0 plugin on Kong API gateway。它將代碼保持在特定的時間並且在那個時候可以使用相同的代碼生成多個訪問令牌。 這是預期的行爲?

感謝您的任何建議。

回答

1

授權代碼必須是短暫的,應該是一次性使用,以避免假使用。所以回答你的問題

代碼的生命週期是什麼?

  • 在使用authorication_code流量對用戶進行認證,對於範圍的一次認證和授權訪問,一個短暫的(比如1分鐘)有效的代碼將被創建併發送回重定向URI。

它只是一次性使用嗎?

  • 是的,它必須是最好的安全性,在使用authorication_code,那麼無論是請求成功或失敗(由於一些驗證錯誤或服務器錯誤),授權碼必須請求訪問令牌一次性使用刪除或標記爲已使用(取決於您想如何使用它)

代碼可以交換多少次才能獲取訪問令牌?

  • 一個authorization_code只能授予一個訪問令牌,因爲一旦發出訪問令牌,代碼就會被撤銷。

在給出代碼的訪問令牌後,代碼會發生什麼?

最佳實踐,代碼可以被刪除

退房谷歌的OAuth2.0單證更好地理解和了解其使用。

https://developers.google.com/identity/protocols/OAuth2WebServer

對於香港問題,似乎它在香港的一個錯誤,他們答應給固定在0.9版本。 檢查這個discussion

+1

感謝您的回覆。我也是這麼想,但正如我所提到的,我在Kong API網關上使用OAuth 2.0插件來保護我的API,這就是它的行爲。它在特定時間爲相同的代碼生成多個訪問令牌(aprox 10分鐘)。我應該限制它嗎? 此信息記錄在某處或基於您的經驗? – Suraj

+0

是啊,我讀了,我用力Kong API,所以我一般的迴應,是的,你必須限制它每個授權碼一個訪問令牌,至少我會建議這樣 –

1

代碼是短暫的一次性訪問令牌。 一旦它被交換爲訪問令牌,它應該被標記爲無效。
對於發行它更好地問它here