配置应用程序池沙箱

  

Windows Server 2008为我们提供了一种全新的特性,这种新的特性允许内置窗用户将辅助性的独特信息注入到工作进程和Windows安全令牌中,从而使各个工作进程的资源彼此之间相互隔离。

  

当使用先前版本的IIS时,有时候很难将不同的网络应用程序池彼此隔离开来。如果多个Web应用程序池需要以同一个身份标识运行(例如:网络服务),那么运行在一个Web应用程序池中的代码就可以使用文件系统对象来访问属于其他网络应用程序池的配置文件,Web页面等资源。这是因为当多个进程以网络服务身份运行时,我们无法既允许其中的某一个进程访问某个文件,同时又禁止其他进程访问同一个文件。
然而,IIS 7.0为我们提供了隔离机制。在IIS 7.0中,每个网络应用程序池都拥有一个网络应用程序池配置文件,这个配置文件是在启动应用程序池的过程中根据启动情况自动生成的。默认情况下,这些随机生成的配置文件将保存在C: \ inetpub \ temp \ appPools文件夹中。每个Web应用程序池都生成了一个附加的SID(安全标识符,安全标识),并且将这个SID注入到w3wp。exe进程中。应用程序池的配置文件是使用访问列表进行访问控制的,只允许使用了相关SID的那些进程访问。因为每个w3wp。exe进程都拥有自己的SID,所以每个应用程序池的配置文件都只能由一个拥有相同SID的进程访问。

  

配置应用程序池沙箱

配置应用程序池沙箱