php - 如何使用 PHP 在 Linux/Apache 上使用 Windows 身份验证连接到 SQL Server?

标签 php sql-server linux apache windows-authentication

当 PHP 代码在 Apache 或 PHP-FPM 下的 Linux 计算机上执行时,如何使用 Windows 身份验证和 native SQL 驱动程序连接到 SQL Server?

https://learn.microsoft.com/en-us/sql/connect/php/how-to-connect-using-windows-authentication?view=sql-server-2017

The credentials under which the Web server's process (or thread) is running must map to a valid SQL Server login in order to establish a connection.

所以基本上问题是如何使用 Linux/Apache/PHP-FPM 做到这一点?

最佳答案

这个问题的答案是使用 kerberos 和 keytab 文件来存储 Windows 用户凭据并使用类似于 k5start 的东西自动获取和更新 kerberos 票证。

此链接Connection problem Linux Apache+PHP to MS SQL Server using WindowsAuth / Kerberos ("No Kerberos credentials available")回答了这个问题的 PHP/Apache 相关部分。

关于php - 如何使用 PHP 在 Linux/Apache 上使用 Windows 身份验证连接到 SQL Server?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54640575/

相关文章:

php - mysql_fetch_array()/mysql_fetch_assoc()/mysql_fetch_row()/mysql_num_rows 等...期望参数 1 是资源

php - array_push 多维数组中的某处

c# - 如何更新 EF 6 中的外键 - Code First - 一对多关系

c# - 检测到冲突的更改。当尝试插入具有相同键的多个实体时可能会发生这种情况

c - wait(NULL) 函数不起作用,父进程总是在子进程之前运行

使用 PDO 更新 PHP

PHP 命名空间——更高效的核心功能?

sql-server - 如何将 MSDE 数据库复制到 SQL Server 2008 Express?

linux - 优化查找命令

python - Standard Streams 文件是否存储在磁盘中?