2016-07-15 72 views
1

我正在爲我的rails應用程序構建API。通過該API,我將登錄用戶並允許他們與他們的數據進行交互。如何只允許我自己的應用程序訪問我的API

除了那個用戶認證之外,我還想確保只有我的iOS應用程序可以訪問API,並最終訪問我自己的Web應用程序。

我想確保沒有其他人會使用API​​,因此在用戶身份驗證之上,我希望使用每個應用程序的令牌來保護我的API。

你通常如何解決這個問題?我是否必須在每次調用時都傳遞該令牌,以便驗證呼叫是否來自有效客戶端並確定它是哪個客戶端(Web vs iOS)。

我會非常感謝任何指針,或者如果你知道一篇文章解釋如何處理這個。

+0

檢出[jtw](https://jwt.io/introduction/) –

+0

謝謝@JigneshAgola,我使用jwt來驗證用戶。也許我只是混淆了概念,但是我想在驗證用戶身份的過程中做的只是授權我的應用程序再次提出API請求,並且阻止其他人再次構建我的API。 –

回答

0

由於您已經在使用jwt來驗證您的用戶,爲什麼不僅僅使用jwt的功能在令牌中包含附加信息,在這種情況下,某種形式的散列字符串可以驗證服務器端是否有效「客戶端ID」。 在每個請求上,您都可以刷新字符串。

每種請求中的雙重身份驗證的種類。用戶和客戶。

+0

我喜歡@stewart的想法 –

相關問題