PHP使用Windows帐户连接到SQL Server

时间:2016-05-24 07:46:01

标签: php sql-server windows management-studio-express

我正在尝试使用Windows帐户连接到SQL Server数据库。在sql管理工作室中,我可以使用此帐户打开数据库,但不能使用我的php应用程序。该用户不是SQL用户,但他拥有SQL数据库的权利。

我尝试使用sql用户,它适用于我的php应用程序。

是否可以使用php应用程序中的Windows帐户,而不是特定的sql用户?

2 个答案:

答案 0 :(得分:1)

有一部分代码带有连接字符串,您可以在其中提供PHP连接到MS SQL的实例名称,登录名,密码等。您可以从Windows域更改凭据上的连接字符串。但它可以接受测试但不适合生产:)

另一种方法是将PHP连接到您的AD并让用户在您的网站上进入登录/传递域名。例如,它只是在IIS中完成(我没有在Linux上运行的PHP上使用域auth,但据我所知LDAP可以帮助you)。

答案 1 :(得分:1)

sqlsrv_connect

默认情况下,它尝试与Windows身份验证建立连接。你可以试试下面的剪辑。如果您必须使用已定义的WindowsUser登录,请尝试上面文档链接中的代码。

$serverName = "serverName\sqlexpress"; //serverName\instanceName

// The connection will be attempted using Windows Authentication.
$connectionInfo = array( "Database"=>"dbName");
$conn = sqlsrv_connect( $serverName, $connectionInfo);

if( $conn ) {
     echo "Connection established.<br />";
}else{
     echo "Connection could not be established.<br />";
     die( print_r( sqlsrv_errors(), true));
}