2014-08-28 29 views
0

我使用oauth2構建應用程序。使用 我我:角度令牌和用戶登錄場景

  1. Laravel的後端
  2. OAuth2以Laravel(lucadegasperi)
  3. 角的前端,因爲它也將和原生移動應用:d。

我的問題是? 用戶登錄的工作流程是什麼?

現在我有。

  1. 用戶來到網站,輸入用戶名和密碼 角發送POST的訪問令牌時,返回的訪問令牌我去爲用戶數據。然後我將access_token存儲在localstorage中。我使用grant_type =密碼,我忘記提及。
  2. 我有2個小時,令牌女王過期。在令牌過期的那一刻,我通過refresh_token功能去尋找新的令牌。

我的問題是:

  1. 這是很好的方式/方法嗎?

  2. 當用戶關閉瀏覽器時會發生什麼? 現在,當用戶關閉瀏覽器,並再次輸入到我的應用程序。我將檢查localstorage,然後通過access_token來驗證用戶身份。如果訪問令牌已過期,我將獲得新的。

  3. 怎麼樣記住我選項或所以叫我保持登錄? 這是否意味着我必須設置將在365天(終身)過期的令牌? 或使用訪問令牌創建cookie/localstorage,因此當用戶進入newt時,我讀取cookie/loaclastorage然後授權用戶?

  4. 而finnaly關於破壞令牌。現在,當我從應用程序登錄時,我的令牌將被銷燬。

感謝

回答

0

我們正在建設使用相同的組件相同類型的服務/應用程序。我們使用密碼流,如果用戶在登錄表單上勾選「記住我」複選框,我將令牌存儲在本地存儲中,否則我只會將令牌存儲在未保存的變量中,當用戶刷新或關閉瀏覽器。

參見這裏測試保護端點的一些注意事項:Testing OAuth 2.0 protected API endpoints in Laravel

0

馬裏揚!

我正在處理包含兩個單獨圖層的簡單應用程序。 1)Rails 5 Json API提供者。 2)單獨運行Angular 2應用程序的NodeJS服務器。

  1. 角2應用程序上登錄請求訪問令牌從谷歌
  2. 角2應用程序現在從谷歌/人的API獲取的UserInfo
  3. 角2應用程序能夠發佈JSON與用戶的顯示名稱,並從谷歌迴應一些ID JSON。
  4. Angular 2將json添加到我的Rails 5 API服務器(部分實現,但已經與login/pass auth配合使用)。

到目前爲止,我已經使用類似於this Gist的代碼實現了隱式OAuth2。使用此代碼,我可以獲取用戶標識信息,這足以讓我在API提供程序中識別用戶或爲其創建帳戶。

這種方法適用於我。希望它也能爲你工作。

注意:這種方法可能不安全。