也许这是一个愚蠢的问题,但老实说,我不知道从哪里开始。
我目前有一个使用Entity Framework的.NET Core 2 MVC项目。在这个MVC应用程序中,用户可以:
现在我想构建一个VueJS SPA,用户也可以使用.net core 2 webapi登录。这个api的所有钩子都已构建并正在按预期工作。
MVC,API和SPA部分都将存在于一个单独的子域中:
同样的行为可以在www.clubhouse.io网站上找到。这似乎正是我希望我的网站工作的方式:)
答案 0 :(得分:0)
你所追求的事实上的事实是OAuth 2.0。
您需要一个组件作为身份提供者,(根据您的要求)也可以与社交身份提供者联合。
与大多数安全性一样,滚动自己的授权服务器实际上是真的坏主意。此外,它已经(大部分)已经解决了问题。
实际上你有几个选择:
鉴于您已经拥有服务器端呈现的MVC应用程序,#3可能是最好的方法。
现在看起来.NET的最佳工具是IdentityServer.io。我会以这种方式前进并开始实施。
一路上有用的提示:鉴于您的SPA应用程序无法保密(其源代码完全可供客户使用),唯一合适的授权授权类型为“隐式”。