it-swarm.cn

IIS中的IUSR和IWAM帐户是什么?

我正在寻找有关IIS)用来帮助我更好地配置托管环境的IUSR和IWAM帐户的很好的解释:

  • 他们为什么在那里?
  • 它们之间有什么区别?
  • 名称代表有意义的东西吗?
  • 我应该做出一些最佳实践更改吗?
  • IIS还为我提供了将应用程序池作为网络服务,本地服务或本地系统运行的选项。我是不是该?
  • 我的Web服务器是域的一部分,这会如何改变?

将多个站点部署到服务器时,通常会创建自己的这些帐户版本,这会引起一些其他问题:

  • 我什么时候可以创建自己的IUSR和IWAM帐户?
  • 我应该如何创建这些其他帐户,以便它们具有正确的权限?

我同时使用IIS 6和IIS= 7)大部分都是默认配置。

23
Generic Error

IUSR和IWAM可以追溯到IIS单独安装时(不是作为OS组件)的)早期。默认情况下,如果网站允许匿名身份验证,则使用IUSR帐户关于操作系统的权限。可以更改为默认值。有一些安全建议至少可以重命名该帐户,因此它不是“已知”帐户,就像建议在计算机上重命名管理员帐户一样。您可以了解有关 MSDN上的IUSR和身份验证 的更多信息。

IWAM是为任何进程外应用程序设计的,仅在IIS 5.0隔离模式时,才用于IIS 6.0。通常在COM中看到它/ DCOM对象。

关于应用程序池标识,默认值是作为网络服务运行。您不应该以本地系统身份运行,因为该帐户的权限大于管理员的权限。这样,基本上您就可以使用网络服务,本地服务或这两个以外的本地/域帐户。

至于做什么,这取决于。将其保留为网络服务的一个优点是,这是服务器上的受限特权帐户。但是,当它通过网络访问资源时,它显示为Domain\ComputerName $,这意味着您可以分配权限,以允许网络服务帐户访问资源,例如在不同框中运行的SQL Server。另外,由于它显示为计算机帐户,因此,如果您启用Kerberos身份验证,则通过服务器名访问网站时,SPN已经存在。

如果希望特定帐户访问网络资源(例如服务帐户访问基于Web的应用程序的SQL Server),则考虑将应用程序池更改为特定Windows域帐户。 ASP.NET中还有其他选项可以在不更改应用程序池标识的情况下执行此操作,因此不再严格需要这样做。您考虑使用域用户帐户的另一个原因是您正在执行Kerberos身份验证,并且有多个Web服务器为一个Web应用程序提供服务。一个很好的例子是,如果有两个或多个Web服务器为SQL Server Reporting Services提供服务。前端可能会使用通用网址,例如reports.mydomain.com或reporting.mydomain.com。在这种情况下,SPN只能应用于AD中的一个帐户。如果您的应用程序池在每台服务器上的网络服务下运行,则将无法运行,因为当它们离开服务器时,它们显示为Domain\ComputerName $,这意味着您拥有的帐户数与服务于服务器的服务器数相同。应用程式。解决方案是创建一个域帐户,将所有服务器上的应用程序池标识设置为相同的域用户帐户,然后创建一个SPN,从而允许Kerberos身份验证。对于像SSRS这样的应用程序,您可能希望将用户凭据传递到后端数据库服务器,因此必须进行Kerberos身份验证,因为这样一来,您将必须配置Kerberos委派。

我知道要接受很多东西,但是简短的答案是,除了本地系统之外,这取决于。

34
K. Brian Kelley

IUSR =互联网用户,即您网站的任何未经身份验证的匿名访问者(几乎所有人)

IWAM = Internet Web Application Manager,即您所有ASP ,. NET应用程序都将在此帐户下运行

通常,IUSR和IWAM仅应有权访问他们所需的内容。他们绝对不能被授予访问其他任何内容的权限,以防这些帐户被盗用,那么他们就无法访问任何重要的内容。

在您提出的问题列表中,这就是我能提供的所有帮助,其他在IIS)管理方面具有丰富经验的人可能可以为您提供进一步的帮助!

9
Mark Henderson

我总是求助于本指南-

http://learn.iis.net/page.aspx/140/understanding-the-built-in-user-and-group-accounts-in-iis-70/

您可以在iis.net上找到很多

简单地说-IUSR是开箱即用的来宾帐户,默认情况下对c:\ inetpub\wwwroot具有权限。

7
William Hilsum