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

时间:2023-04-08
本文介绍了PHP PDO 连接到具有集成安全性的 SQL Server?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

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

Can I connect to SQL Server 2008 using PDO and integrated security using the mssql driver? Currently doing something like this to connect normally:

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

使用 SQL Server 身份验证可以很好地工作,但是必须为大量数据库创建 SQL Server 登录名很痛苦,因此如果可能,最好使用集成安全性.我在 Windows 上将 PHP 作为 CLI 运行.

This works fine using SQL Server authentication, but it is a pain having to create SQL server logins for loads of databases, so it would be nice to use integrated security if possible. I am running PHP as CLI on Windows.

推荐答案

该站点帮助:用于 PHP 的 SQL Server 驱动程序:了解 Windows 身份验证

解决我的问题的要点是:

The gist of it that fixed my issue was:

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

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

My testing was with the newest driver released June 2010 (SQL Server Driver for PHP 2.0 CTP2).

这篇关于PHP PDO 连接到具有集成安全性的 SQL Server?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

上一篇:PDO 通过引用通知? 下一篇:PDO - FETCH_CLASS - 将结果作为参数传递给构造函数

相关文章