Web applications 创建iis7站点的用户权限

Web applications 创建iis7站点的用户权限,web-applications,iis-7,iis-7.5,Web Applications,Iis 7,Iis 7.5,我有一个特殊的网站,可以使用IIS7服务器管理器创建新网站: using (ServerManager serverManager = new ServerManager()) { // create new site logic here } 此特殊站点必须在系统帐户下运行,才能管理IIS7。有没有办法创建一个特殊的windows用户,将其设置为站点的应用程序池标识,并授予该用户仅访问IIS7而非完全系统访问的特殊权限 我之所以要这样做,是为了给站点的进程标识提供尽可能少的

我有一个特殊的网站,可以使用IIS7服务器管理器创建新网站:

using (ServerManager serverManager = new ServerManager())
{
     // create new site logic here    
}
此特殊站点必须在系统帐户下运行,才能管理IIS7。有没有办法创建一个特殊的windows用户,将其设置为站点的应用程序池标识,并授予该用户仅访问IIS7而非完全系统访问的特殊权限

我之所以要这样做,是为了给站点的进程标识提供尽可能少的权限


如果问题不清楚,请告诉我:)

如果您创建一个新帐户作为应用程序池身份,则需要使用此代码为其提供正确的权限,然后再添加创建站点所需的权限:

导航到:

C:\Windows\Microsoft.NET\Framework\v2.0.50727

然后做:

aspnet_regais-ga DomainOrMachineName\AccountName

看这里

这实际上取决于该应用程序应该能够做什么,如果您只想创建一个新站点,您可以创建一个帐户并授予对%windir%\system32\inetsrv\config\applicationHost.config的读写访问权。话虽如此,但要非常小心这样做,因为一旦他们可以写入该文件,他们就可以做一些功能强大的事情,例如,添加一个作为系统运行的新应用程序池,在这一点上,他们可以使用一个功能强大的标识来运行代码

如果您希望允许它们对站点、应用程序池、应用程序域等运行时对象进行循环、启动和停止等操作,那么您将需要额外的步骤,但我不建议这样做

此外,如果您实际设置的是加密属性(例如应用程序池或虚拟目录中的密码),那么您还需要授予加密密钥的权限,但我也建议您不要这样做,因为这样可以使它们能够解密密码