使用 windows Auth 从 MVC 项目调用外部 Web API

Call external Web API from MVC project with windows Auth

我有一个从别人那里继承的现有 MVC 应用程序。

我现在正尝试从旧应用程序中获取一些 API 调用并将它们移动到新应用程序中。

问题是,当 MVC 应用程序尝试调用新应用程序中的 API 调用时,它会收到 401.2(未经授权)响应。

我看过 401.2 表示前端和后端使用不同的身份验证协议,这对我来说很有意义。

这是新应用程序中帐户调用的响应 headers 的片段:

这里是从旧应用程序调用相同 API 时相同响应 headers 的片段:

在我看来,他们使用的是不同的协议 - 我说得对吗?主要区别似乎是失败请求上的 'WWW-Authenticate:Negotiate' - 但我不知道如何解决这个问题?

如果是这样,谁能告诉我需要在我的 MVC 项目中更改什么以使其使用第一个项目的 Auth 类型?

两个应用程序使用相同的数据库是否有帮助?

我知道这个问题有点含糊,但我不知道去哪里解决这个问题。

任何帮助将不胜感激...

您需要一个 Sign-on 来通过不同的应用维护您的凭据,您可以:

我推荐使用身份服务器。