PHP PDO 连接到具有集成安全性的 SQL Server?

Posted

技术标签:

【中文标题】PHP PDO 连接到具有集成安全性的 SQL Server?【英文标题】:PHP PDO Connection to SQL Server with integrated security? 【发布时间】:2010-10-25 19:48:17 【问题描述】:

我能否使用 PDO 连接到 SQL Server 2008,并使用 mssql 驱动程序集成安全性?目前正在做这样的事情来正常连接:

$db = new PDO("mssql:host=host;dbname=db", "user", "pass"); 

使用 SQL Server 身份验证可以正常工作,但是必须为大量数据库创建 SQL Server 登录名很麻烦,因此如果可能的话,最好使用集成安全性。我在 Windows 上将 php 作为 CLI 运行。

【问题讨论】:

【参考方案1】:

本网站帮助: SQL Server Driver for PHP: Understanding Windows Authentication

解决我的问题的要点是:

启用 Windows 身份验证 禁用匿名身份验证 从 PDO 连接中删除用户名和密码
$conn = new PDO( "sqlsrv:server=$serverName ; Database=$dbName" );

我的测试是使用 2010 年 6 月发布的最新驱动程序(SQL Server Driver for PHP 2.0 CTP2)。

【讨论】:

以上是关于PHP PDO 连接到具有集成安全性的 SQL Server?的主要内容,如果未能解决你的问题,请参考以下文章

使用 PDO_DBLIB 连接到 MS SQL 数据库的 PHP 错误

php 无法连接到 sql server 2008(使用 pdo dblib)

PHP PDO 连接到 Advantage 数据库 SQL Server

如何使用 PHP PDO 从 Mac 连接到 Sql Server?

使用 PDO 连接到 SQL Server 2008

PHP PDO 使用 SSL 连接到 MS SQLServer Express