2016-08-04 71 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以验证当前用户。

相关问题