2017-04-10 33 views
0

O/驗證用戶只能查詢自己的數據/信息

我工作的一個小應用程序,它會很好至今。我和一位朋友談過這件事,他突然讓我意識到了一些事情。我如何確保用戶只能從雲中的數據庫查詢他自己的數據?

它是一個非常簡單的應用程序,您可以創建一個用戶並製作一些個人購物清單。

我想到了一些選擇,但我不確定什麼是正確的方向 - 或者即使它們中的任何一個都是正確的。

  1. 用戶名/密碼&密碼存儲在本地並附加到請求中,並且每次都對數據庫進行檢查。
  2. 生成一個令牌,將其保存在本地存儲爲「活動」會話的DB &中,並且每次發送請求時,該令牌都會附加到該請求並進行檢查。
  3. ...?

對不起,如果我把這個主題有錯誤的標籤,因爲我不是100%確定他們應該放在哪裏。

回答

1

那麼,從您的描述,它接縫,你正在「沒有後端」應用程序。如果是這種情況,我建議你看看Firebase,因爲它可以解決你對認證和用戶授權的所有顧慮。

如果您想要使用更自定義的方法,只需考慮將用戶名和passowrd附加到請求始終不被推薦,並且因爲您使用令牌也是不必要的。現在

,回到這個問題,我會給你我的視野相關的上下文其中使用認證令牌,因此需要一個後端:

  1. 當你登錄的用戶,則產生令牌是用戶ID的功能
  2. 每個用戶請求必須包含令牌
  3. 後端可以提取從所附令牌
  4. 策略或在特定的條件將檢查提交請求的用戶的id將要檢索的數據必須屬於其id已被提取的用戶。

希望這可以幫助你

+0

我敢肯定,如果我還不清楚,我做IDD有一個後端數據庫。我如何製作一個後端可以從中獲取ID的令牌?並且我不需要有一個動態令牌,所以如果用戶還沒有登錄進行更新,會更新嗎? – Mac

+0

這取決於您依賴的技術堆棧。例如,對於NodeJS,有[PassportJS](http://passportjs.org/),但通常這是許多框架提供的功能 –