我有 2 个负载平衡的 Web 服务器,尝试使用直通身份验证从第 3 个服务器访问图像。
由于我的主机不支持域,因此服务器位于工作组中。
无论我设置什么文件/IIS 权限,Web 服务器都无法访问图像。
匿名 asp.net 网站在 IIS 6 中以什么用户身份运行?
答案1
默认情况下,大多数 ASP.NET 函数在应用程序池标识下运行,默认情况下,该标识为 NETWORK SERVICE。这意味着 computername$ 帐户在网络上可见。
有些东西以网站的匿名用户帐户(即 IUSR_computername)的身份运行,如果您设置 impersonation="true",那么大多数东西将以 IUSR_computername 的身份运行。
如果您可以将站点放在专用应用程序池中,我建议您为您的应用程序池创建一个自定义用户,使用您建议的直通身份验证,并使用相同的用户/密码。必须将用户添加到每台服务器上的 IIS_WPG 组。然后确保将模拟设置为 false,或者未设置(默认为 false)。然后该用户将用于网络访问。
您仍有可能收到代码访问安全 (CAS) 错误。如果是这样,您需要使用 caspool 工具授予 UNC 路径访问权限。
答案2
用户 IUSR_计算机名,它是 Guest 组的成员。(更多内容)
如果您在这三个系统上创建具有相同用户名和密码的新用户,并将其设置为应用程序的身份,则您应该能够毫无问题地访问后端服务器上的文件。