【发布时间】:2014-07-04 07:42:25
【问题描述】:
对于那些习惯于 Windows 身份验证的人来说,这将是一个简单的答案,但作为 Solaris 系统管理员,我只是想了解如何在 IIS7 网站上运行的应用程序(在 Server 2008 R2 上运行)和Microsoft SQL 2008 服务器。
目前的应用程序使用这个标签:
数据源=mydbserverhostname;初始目录=TheDBName;用户 ID=testuser;密码=密码
在规范中它应该使用这个:
数据源=mydbserverhostname;初始目录=TheDBName;集成安全=SSPI;
我想在必须部署到生产环境之前返回并让 Windows 身份验证正常工作。根据我对 Windows 的理解,我需要一个 Windows 域帐户来针对在 SQL Server 2008 上设置的服务帐户进行身份验证。
我缺少的是如何实现这一点以及如何让它作为服务运行,以便我可以注销并让 IIS7 运行该站点并让 SQL Server 相互通信。
我在这个论坛上阅读了几个类似的问题,但答案似乎是“只是切换到 SQL 身份验证”,我需要在最终实现中避免。
任何帮助将不胜感激。
【问题讨论】:
-
您是否希望您的 IIS 应用程序使用固定的 windows 域帐户连接到您的 SQL 数据库,或者您是否打算让通过 windows 身份验证连接到您的 IIS 应用程序的每个用户使用直接连接到数据库他们自己的凭据?
-
一个很好的问题 Dan,我已经获得了一个在 SQL Server 上设置的服务帐户。现在,根据我对 Windows 身份验证的理解,我需要使用固定域帐户连接到该服务帐户,但这是我需要澄清的事情,以及如果我的假设正确,如何实现这一点。
-
好的,这意味着您的应用程序应该始终使用相同的帐户(提供的服务帐户)连接到 SQL 数据库。要完成这项工作,您需要更改托管应用程序池的标识。更多信息here
-
谢谢 Dan,我昨晚看到了那个 URL,但只是需要确保我走的是正确的道路。所以我在想,当我目前使用 DefaultAppPool 时,我只需要将 Identity 更改为与 SQL Server 上创建的服务帐户匹配的自定义用户名和密码?
标签: sql-server-2008-r2 iis-7.5 windows-server-2008-r2