Windows React 和 ASP.NET 后端之间的身份验证

Windows Authentication Between React and ASP.NET Back-end

我有一个多层应用程序,它使用 2 个 NET Core ASP.NET 层。

Tier 01 使用的是 NTLM,因此当用户打开浏览器时,ASP.NET Core 加载 React SPA 并且从 ASP.NET Core 我可以获得当前 Windows 的 IPrincipal ] 用户。不幸的是,后端在应用程序池服务帐户的上下文中始终是 运行。

在这种情况下,从 React 中使用 运行 应用程序的 Windows 帐户调用后端的正确方法是什么?有没有办法在Front-end NET Core主机中生成一个Token,比如OAuth,然后传给Back-end?

备注

我确实有架构要求,我不能使用用户名和密码,我不能使用基本身份验证。前端必须使用 NTLM 打开并显示当前 Windows 帐户(这部分工作正常

我认为您可以使用下面提到的方法 link。 在第 01 层中,创建一个需要 Windows 身份验证的 API 端点。从身份中获取用户信息并生成令牌。

Use Windows Authentication with OAuth 2.0

对于令牌生成,让我们使用 IdentityServer。