2

一个多月以来,我一直在尝试将此处的 ASP 脚本连接到 SQL Server 数据库,但每次我使用此连接字符串时:
Data Source=dbServer01;Initial Catalog=POS123;Integrated Security=SSPI;User ID=domain\usr;Password=pwd;

它忽略了我指定的用户并使用机器名来验证连接,这显然失败了。

所以我将 Integrated Security 值更改为 False,如下所示:
Data Source=dbServer01;Initial Catalog=POS123;Integrated Security=False;User ID=domain\usr;Password=pwd;

然后我收到一个错误:用户“域\ usr”登录失败,这是不可能的,因为当我们在 odbc 管理应用程序中测试与它的连接时它可以工作。

我请教了一位前辈,他说是把用户名作为数据库用户名,但是我们需要让它使用windows认证,并指定使用哪个用户。我记得一个月前读过这篇文章,发现在使用 Windows 身份验证与此版本的 ASP.NET 进行连接时,无法指定用户和密码。我很快就会自杀如果我无法连接这个脚本,请有人救救我!

4

1 回答 1

3

你至少有2这里有3个选项:

  • 在您的 Web 服务器上创建一个应用程序池domain/usr,然后将您的应用程序分配到此应用程序池,并使用集成安全性。您的连接字符串将是Data Source=dbServer01;Initial Catalog=POS123;Integrated Security=SSPI;- 即删除用户名和密码 - 这些是 AppPool 身份固有的。
  • 或(假设启用了混合模式安全性)要求您的 DBA 创建一个usr具有相同权限的新 SQL 用户(刚刚称为),domain/usr然后将您的连接字符串更改为标准安全性,使用User Id=usr
  • 如果启用模拟(此处此处),则可以使用域凭据而不更改应用程序池标识。请注意关于保护明文密码的要点,而 IME 这通常还需要额外的配置以避免双跳问题
于 2013-07-09T11:34:40.847 回答