配置 ASP.NET 模拟身份验证

Configuring ASP.NET Impersonation Authentication

我在 IIS 上开发了一个控制 PC 音量的网页(使用库 - CSCore.CoreAudioAPI)。 我需要用户以机器中的当前用户身份登录。

我尝试配置 web.config 文件以允许模拟身份验证,但仍然遇到问题。

<system.web>
    <identity impersonate="true"
      userName="Domain\username" 
      password="XXXX" />
</system.web>

感谢您的帮助。

您还需要启用 Windows 身份验证才能使其正常工作。否则没有捕获用户名的机制。

但是,我认为更好的方法是为您的应用程序创建自定义应用程序池,并将模拟(高级设置)显式设置为您要设置的用户。由于应用程序池托管您的应用程序(即它是启动 EXE),您的应用程序然后在该帐户下运行并假设它在机器上具有完全权限它应该能够访问硬件以控制音量。

ASP.NET 模拟是一项遗留功能,旨在在 IIS 没有适当的应用程序隔离时与 IIS 6 及更早版本一起使用。在更高版本中,应用程序池接管了应用程序的托管和用户帐户模拟。