2016-03-02 71 views
0

假設您有一個REST API,您希望使用基於OAuth的身份驗證系統進行保護。使用我使用的網站的正常流動是:對OAuth流程中的回調感到困惑

  • 用戶點擊一個鏈接登錄到谷歌
  • 谷歌讓你指定的回調請求
  • 您的應用程序通過採取響應回調給定令牌並且請求用戶數據,找出哪些用戶數據對應於數據庫中,並讓你回來的Web應用程序會話cookie和HTML重定向(例如到家庭或任何你喜歡)

基本上回調端點轉換谷歌令牌到您的Web應用程序會話cookie中。

現在我想知道:對於不知道任何關於cookie或重定向的移動應用程序,該如何工作?它可以這樣做:

  • 在谷歌點擊按鈕,使HTTP請求到谷歌驗證網址
  • 谷歌與您指定
  • 應用發出另一個請求到上面提到的回調URL回調URL響應您的應用
  • 您的應用程序返回一個Cookie的會話值和重定向URL的網頁
  • 移動應用忘掉過去的重定向URL,並採取會話cookie的值,並使用了任何其他的API請求來

是嗎?

回答

0

一種方法是,您在原生移動UI上創建嵌入式Web組件,將其URL設置爲授權端點,用戶登錄並授權您的應用程序,授權服務器重定向到您的回調URL授權令牌。

您的應用程序訂閱Web組件的更改,當它檢測到回調URL時,它將使用授權令牌,銷燬Web組件,並調用REST API來獲取Access令牌,然後訪問所有受保護的資源。

相關文章:

聲明:我從來沒有實現過這個,我不與移動應用程序的工作,我剛剛得到這個從閱讀材料。