如何使用 ASP.NET WEB API 2 获取 Window 的登录用户名和密码

问题描述 投票:0回答:1

我正在开发一个 Intranet 应用程序,其中我从 ASP.NET WEB API 调用 SAP 服务,目前它可以与具有预定义用户名和密码的

HttpBasicAuthentication
正常工作,但现在的要求是获取记录的在windows中通过ASP.NET WEB API获取用户的用户名和密码并传递给SAP服务进行身份验证?谁能帮我解决这个问题吗?

asp.net asp.net-web-api2
1个回答
0
投票

1) HttpBasicAuthentication 在这种情况下不适用。

2) 通过 web.config 标签使用身份模拟(参考Identity Impersonate)以在 api 中获取当前用户的身份。然而,这“仅”适用于基于 Intranet 的应用程序,不适用于互联网上的应用程序。对于基于互联网的,您需要实现 Kerberos 桥接(有点复杂)的概念。 3)在app.start方法中,您需要将当前主体设置为windows主体。

然后您就可以获得用户详细信息..

请注意,您

不会

拥有可用的用户密码,因为操作系统会非常非常安全地保护该密码。您可以获得用户的 Kerberos 令牌,您的目标系统可以通过该令牌对正在使用的 AD 进行身份验证。

© www.soinside.com 2019 - 2024. All rights reserved.