问题描述
我有一个用C编写的ISAPI扩展。它执行的功能之一是接收文件并将其写入磁盘。
该扩展名以IUSR身份运行,因此我授予了对IUSR的写权限。相反,我希望能够为特定用户提供写权限,并使用从客户端传递的信息以该用户身份写入文件。
解决方法
您可以使用应用程序池标识来做到这一点。
1)打开iis管理器
2)选择您的应用程序池->高级设置。
3)在应用程序池标识集中设置自定义用户帐户或本地系统。
4)打开要为其设置权限的文件夹,并将该文件夹设置为向“ IIS AppPool \ yourapppoolname”写入权限
,
答案是使用LogonUser,ImpersonateLoggedOnUser和RevertToSelf。如果客户端应用程序通过域/用户名/密码,则服务器代码可以模拟它们。