簡體   English   中英

使用OAuth和移動客戶端應用程序時,我需要保持會話狀態嗎?

[英]Do I need to keep a session, when using OAuth and a mobile client application?

我是OAuth和各種身份驗證機制的新手,有些概念有些薄弱(我來自移動世界,而不是來自網絡世界)。 對不起,假的問題。

我想創建一個移動應用程序和一個后端,該后端將向移動應用程序公開REST API。 為了授權應用程序代表用戶訪問REST API,我將使用OAuth流,因此最后,我的應用程序將使用訪問令牌訪問BE資源。

從我的觀點來看,這足以滿足我的所有目標:

  • 移動應用將調用端點https://example.com/user
  • BE接收帶有訪問令牌的請求
  • BE調用OAuth自省端點以了解訪問令牌屬於哪個用戶。
  • BE端點將用戶數據返回到移動應用程序

對我來說,這似乎還不錯,但是我看到有些人將此機制與Cookie結合在一起,以使用會話進一步識別用戶。

我的用例需要會話嗎? 它有什么好處?

從我的POV會話可能僅在具有基於瀏覽器的應用程序時才有用。 基於瀏覽器的應用程序是否同時使用訪問令牌和會話? 還是將會話映射到服務器端的訪問令牌?

謝謝!

默認情況下,OAuth中沒有Cookie或會話(除非您使用的是服務器端網絡應用)。 第一步,我將保持上面的內容-這看起來非常標准。 不過,將會話建模到API接口中可能會很有用。 這將使您的后端能夠區分運行2個UI實例的用戶-並了解哪個API請求來自哪個UI實例。 訪問令牌並不能完全滿足您的需要-因為訪問令牌會在一段時間后刷新。

暫無
暫無

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

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