是否可以在没有密码的情况下使用 LogonUser API?

is it possible to use LogonUser API without password?

我正在开发一个 C++ 应用程序,这个应用程序作为 windows 服务运行。 我需要模拟当前用户访问网络位置,为此我使用 Windows API LogonUserImpersonateLoggedOnUser.

问题是我只有用户名和域信息而没有密码。那么是否可以在不提供密码的情况下调用LogonUser来获取用户句柄?

不,那将是一个相当明显的安全漏洞。

但是,您可以在当前用户的 UI 进程和您的服务之间使用命名管道。然后您的服务可以模拟命名管道的另一端。这是安全的,因为您控制管道的两端。