2010-10-14 89 views
0

我有一个特殊的网站,可以创建一个使用IIS7 ServerManager的新网站:用户权限创建IIS7网站

using (ServerManager serverManager = new ServerManager()) 
{ 
    // create new site logic here  
} 

这个特殊的网站上有下,系统帐户运行,以能够管理IIS7。有什么办法可以创建一个特殊的Windows用户来设置为网站的应用程序池标识,并赋予这个用户特殊的权限来访问IIS7但不是完整的系统访问权限?

我想这样做的原因是为网站的进程标识尽可能少的权限。

请让我知道,如果这个问题不明确足够多的:)

回答

0

这真的取决于应用程序应完全能做什么,如果你想要做的就是创建一个新的网站的能力,你可以创建一个帐户并授予对%windir%\ system32 \ inetsrv \ config \ applicationHost.config的读写权限。说过要非常小心,因为一旦他们可以写入该文件,他们就可以完成强大的功能,例如,添加一个以System身份运行的新应用程序池,并且此时能够使用身份作为强大功能运行其代码随着它的到来。

如果你想允许它们回收,为站点,应用程序池,应用程序域等运行时对象启动& stop等,那么你将需要额外的步骤,但我不会建议这样做。另外,如果您实际上设置了加密属性(例如应用程序池或虚拟目录中的密码),那么您还需要授予加密密钥的权限,但我也建议不要这样做,因为会给他们解密密码的能力。