我有四个不同的应用程序池,每个应用程序池用于不同的网站,全部运行为Network Service
。
这是正常配置吗?
它会导致不同应用程序之间出现问题吗?
答案 0 :(得分:1)
如果您已将每个网站的匿名身份验证配置为使用“应用程序池标识”,则请求将作为Network service
帐户运行。
如果这不是共享服务器,即您不允许您的客户或用户上传内容或部署ASP.NET应用程序,并且您和您的团队是唯一的部署者/ mamagers,那么这不是一个可怕的要做的事。
也就是说,如果一个站点遭到入侵,那么攻击者就有可能破坏其他站点。如果Network Service
帐户只有读访问权限,那么攻击将仅限于数据被盗,否则他们将能够造成更多的破坏。
除非您有充分的理由,否则将应用程序池配置为以Application Pool Identity
运行始终是个好主意。 IIS将在应用程序池运行时为您合成一个帐户。您应该配置面向公众的www文件夹,以便为称为IIS AppPool\[POOL_NAME]
的帐户授予适当的权限,其中[POOL_NAME]
是该站点的应用程序池的名称。
您可能希望阅读我之前与此相关的一个答案,以帮助您理解此机制:
What are all the user accounts for IIS/ASP.NET and how do they differ?
另见: