代码之家  ›  专栏  ›  技术社区  ›  Patrick Peters

如何在不同机器上建立IIS和SQL Server之间的信任?

  •  5
  • Patrick Peters  · 技术社区  · 14 年前

    我有一个.net web应用程序在IIS6中托管,禁用了Windows身份验证和匿名访问。web应用正在连接到同一域但在不同计算机上的SQL Server。

    我想让IIS工作进程帐户。。。被授予访问SQL Server的权限。

    这行吗?

    (有一对一信托吗?或者我应该做些额外的努力来让信任发挥作用吗?)

    (编辑) 关于这个 page 我读到:

    IUSR_u必须在域中,并被授予对SQL Server的正确访问权限;或者,必须在站点/应用程序上禁用匿名访问-这将允许IIS将用户凭据传递给SQL Server。不做这两件事都会导致错误。

    4 回复  |  直到 14 年前
        1
  •  2
  •   Aliostad    14 年前

    如果您提供对应用程序池标识的SQL访问,则此方法可以工作。

    即使使用模拟,也无法将用户的凭据传递给SQL。

        2
  •  1
  •   hunter    14 年前

    您应该可以在SQL Server框中允许该域帐户访问,或者创建一个SQL Server帐户并使用该帐户查询数据库。

    有关连接字符串和受信任连接的详细信息,请访问: http://www.connectionstrings.com/sql-server-2008

        3
  •  0
  •   Dave Harding    14 年前

    最好为您的连接设置一个特定于sql用户帐户或域帐户。 拥有相同的帐户有助于连接池: http://msdn.microsoft.com/en-us/library/8xx3tyca.aspx

        4
  •  0
  •   Brian Vander Plaats    14 年前

    若要使其正常工作,必须配置Active Directory以在web服务器和数据库服务器之间建立信任。这叫做授权。这是必须为每台服务器主动配置的,因为允许进程获取某人的凭据并在整个网络中使用它本身是不安全的。

    更多信息请点击此处:

    http://msdn.microsoft.com/en-us/library/ff647404.aspx

    更具可读性的版本:

    http://www.databasejournal.com/features/mssql/article.php/3696506/Setting-Up-Delegation-for-Linked-Servers.htm