繁体   English   中英

如何将Asp.net MVC Core与Asp.net Identity Core和WebAPi Core结合使用?

[英]How to use Asp.net MVC Core with Asp.net Identity Core and WebAPi Core?

我将使用Dot Net Core创建一个Web应用程序。 将来,我还将为同一应用程序创建移动应用程序。 现在,我正在考虑该项目的体系结构。 我想通过Asp.net Identity Core使用WEB API核心。 另外,我将在MVC Core应用程序中使用WEB API。 但是我想到的问题是,如何使用MVC和WEB API处理ASP.net身份? 我是否需要同时包含在MVC中或仅包含在WEB API中?

我努力思考,但仍然感到困惑。 需要建议。

您可以使用基于令牌的身份验证。

在资源所有者流方案中,您的客户端应用程序(mvc应用程序/本机应用程序)将通过提供用户的凭据来使用您的Web api,Web api将通过数据库中的ASP.NET Core Identity验证该凭据,如果用户名和密码为正确,然后返回JWT身份验证令牌和用户详细信息。 您的客户端应用可以验证令牌并登录用户:

ASP.NET Core 2.2-使用示例API教程构建的JWT身份验证教程

ASP.NET Core 2.0中的令牌身份验证-完整指南

另外,当您要推出自己的成熟的OpenID Connect授权服务器时, IdentityServer4是一个不错的选择,该服务器可以处理诸如联合身份验证和单点登录之类的复杂用例。

因此,您的问题可能对Stackoverflow来说是开放式的,并且您还没有真正展示出到目前为止所做的尝试。

我会尽力回答。 首先,您只需要从项目模板开始。 启动一个MVC项目,在其中您也可以轻松拥有API端点。 为了清楚起见,我建议将这些内容分成两个项目-但是,如果这只是一个小型个人项目,那么将它们放在同一项目中可能会很好。 微软在MVC上有一个很好的资源:

Microsoft MVC演练

对于身份部分。 您需要某种授权才能使其正常工作。 我建议您看一下IdentityServer4。 其中提供了关于如何进行设置以及如何将其与Asp.NET Core Identity集成的极好的演练:

IdentityServer4

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM