【问题标题】:Which project should I add .Net Core Identity (Web API or in Web Client)?我应该在哪个项目中添加 .Net Core Identity(Web API 或 Web 客户端)?
【发布时间】:2020-11-16 11:44:51
【问题描述】:

我创建了 2 个单独的项目,一个 Web API 和一个 MVC 作为 Web 客户端。我想为我的 Web 客户端添加一个外部登录,现在我对应该放置身份存储的项目感到困惑。

顺便说一句,我使用 .Net Core 3.1 和 VS Code 作为我的编辑器。

【问题讨论】:

  • 在我看来,这应该基于您的要求。如果 web 客户端包含一些有用的信息,并且 web api 和 web 客户端托管在同一台服务器上,您可以在 web 客户端中启用身份并设置 web api 只接收内网访问。
  • 非常感谢您分享您的意见。我只是认为如果所有的业务逻辑和数据访问都必须放在 Web API 中会更好,因为我们可以使用一些安全功能来保护它们,例如使用 AAD 进行令牌身份验证。

标签: c# asp.net-core asp.net-core-mvc asp.net-core-webapi


【解决方案1】:

此问题不完整(关于您将如何使用 API 的信息不足)。

在大多数情况下,.Net Core 身份系统应该在 API 中使用,因为 API 通常包含正在实现的应用程序的主要逻辑,而客户端只是交互接口(其中 可以有多个,例如,一个移动应用程序和一个网络界面)。

您还提到您正在使用 VS Code 作为代码编辑器。它没有 VS 那样的内置代码生成功能,但您仍然可以使用 dotnet CLI codegenerators(例如 ASP Identity scaffolding)。

【讨论】:

  • 感谢您的回复和分享有关 API 应该如何工作的想法。正是这些天来,我计划实现 .Net Core Identity 的强大功能。在我进行研究的过程中,我担心如何有效地使用 UserManager 和 SigninManager。
  • 但是现在,您以某种方式澄清了我的困惑,谢谢:)
猜你喜欢
  • 2018-01-03
  • 2021-05-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-06-19
  • 1970-01-01
  • 2021-04-20
  • 1970-01-01
相关资源
最近更新 更多