我想做的是使用WebAPI使用基于令牌的身份验证对MVC应用程序和移动应用程序进行身份验证。我目前有MVC应用程序直接使用VS生成的标准.NET SignInManager代码与数据库进行身份验证。我的WebAPI位于其他项目中,并且将位于其他网站中。
我有使用API进行基于令牌的身份验证的移动应用。我现在想做的是将MVC应用程序移动为使用同一身份验证。我希望像现在一样使用SignInManager,只是使用令牌将基础身份验证位置更改为API。我这样做是为了在MVC应用程序中对用户进行身份验证,并且还使用API中的令牌来保护API。
我不确定这是个好主意,还是确定实现此目标的最佳方法是什么。这可能是一个坏主意。也许我应该将API和MVC应用程序合并到同一项目中?任何反馈或想法都会很棒。
如果这没有意义,请告诉我。
答案 0 :(得分:0)
Web Api的想法是可以将服务与多个客户端一起使用,即Angular Web App,Xamarin Mobile App和Console App,它们通常使用相同的Auth方法使用API的服务。基于令牌,从概念上讲就是这个主意。
现在,在您的方案中,您先创建了MVC Web应用程序,然后又创建了移动应用程序,但是对于移动应用程序,您还创建了Web Api,因此基本上您有两个放置业务逻辑的地方。
我建议您移动和集中Web Api中的所有内容,并仅使用Auth,因此在MVC客户端项目中,只需像在移动应用程序中一样存储令牌即可。