2014-09-23 46 views

回答

0

據我所知,你的問題沒有被覆蓋的規格,所以下面的答案只反映我在實際執行個人意見。

客戶可能合法地請求具有不同範圍的多個授權碼。你可以爭辯說這是否合理(儘管我認爲它確實存在),但標準並不禁止它。因此,我認爲只有當客戶端重新發送請求時(即具有完全相同的請求細節:客戶端ID,重定向URI,範圍),舊代碼才應該被撤銷。

對於缺少redirect_uri,服務器應該返回HTTP 400錯誤請求並在消息正文(和/或適當的HTTP頭文件)中包含錯誤詳細信息。

+0

如果我理解正確授權碼應該有一個小的TTL。那麼,如果每個代碼只能存活1-10分鐘,那麼允許具有不同範圍的多個授權代碼是沒有意義的。在RFC中表示客戶應儘快交換Authorization Token的授權碼。 – 2014-09-26 19:30:20

+0

短暫的TTL與多個請求不矛盾,它們都可以在短時間內送達。然而,再次想到我認識到授權代碼OAuth場景需要明確的用戶批准(即用戶交互)。由於該方案將用戶從客戶端webapp重定向到auth服務器,因此在檢索到第一個請求的結果之前,客戶端無法請求另一個令牌。因此,您應該撤銷來自同一客戶端的新請求的代碼。 – 2014-10-01 14:18:48