使用WebAPI进行基于令牌的身份验证来验证MVC和移动应用程序

时间:2018-11-14 02:06:21

标签: asp.net-mvc asp.net-web-api2

我想做的是使用WebAPI使用基于令牌的身份验证对MVC应用程序和移动应用程序进行身份验证。我目前有MVC应用程序直接使用VS生成的标准.NET SignInManager代码与数据库进行身份验证。我的WebAPI位于其他项目中,并且将位于其他网站中。

我有使用API​​进行基于令牌的身份验证的移动应用。我现在想做的是将MVC应用程序移动为使用同一身份验证。我希望像现在一样使用SignInManager,只是使用令牌将基础身份验证位置更改为API。我这样做是为了在MVC应用程序中对用户进行身份验证,并且还使用API​​中的令牌来保护API。

我不确定这是个好主意,还是确定实现此目标的最佳方法是什么。这可能是一个坏主意。也许我应该将API和MVC应用程序合并到同一项目中?任何反馈或想法都会很棒。

如果这没有意义,请告诉我。

1 个答案:

答案 0 :(得分:0)

Web Api的想法是可以将服务与多个客户端一起使用,即Angular Web App,Xamarin Mobile App和Console App,它们通常使用相同的Auth方法使用API​​的服务。基于令牌,从概念上讲就是这个主意。

现在,在您的方案中,您先创建了MVC Web应用程序,然后又创建了移动应用程序,但是对于移动应用程序,您还创建了Web Api,因此基本上您有两个放置业务逻辑的地方。

我建议您移动和集中Web Api中的所有内容,并仅使用Auth,因此在MVC客户端项目中,只需像在移动应用程序中一样存储令牌即可。