2016-08-04 49 views
0

有兩種存儲經過身份驗證的用戶詳細信息的方法&爲每個Web API調用發送相同的信息。 保存在Cookie中。 保存在本地存儲中。使用.net web API在角度應用程序中驗證用戶的最佳方式是什麼?

在我的情況下,用戶的詳細信息將用於我的Web API &我只需要幾個(約4個值)的用戶細節。所以對於我在瀏覽器中存儲用戶的詳細信息是合適但是,不管是否使用本地存儲或Cookie存儲,最終用戶都可以看到userDetails(如UserID,tenantID等,這些是我的數據庫中的值)。所以存在安全問題。

爲了克服這個安全問題,如果我將使用一些角編碼解碼算法,我的應用程序將會很慢。有什麼解決辦法嗎?

回答

0

我正在使用Owin的Web API 2。它採用了基於令牌的認證和工作得很好,這裏是鏈接,我的實現,他們遵循最佳實踐:

http://bitoftech.net/2014/06/01/token-based-authentication-asp-net-web-api-2-owin-asp-net-identity/

您使用的是通過向客戶端和API來驗證用戶的承載身份驗證令牌。您還可以使用刷新令牌之類的東西,以在您的角度應用中使用攔截器服務獲得額外的安全層。所以這樣做的好處是,您不需要使用本地存儲或cookie存儲您的用戶名/散列密碼等,但只需要認證令牌,然後將其發送到API以驗證當前用戶。

相關問題