$myServer = "sql2008";
//$myUser = "zach";
//$myPass = "pass";
//$myUser = "DOMAIN/zach";
//$myPass = "pass";
//$myUser = "zach@DOMAIN.net";
//$myPass = "pass";
$myUser = "sa";
$myPass = "pass";
$myDB = "Database";
//connection to the database
$dbhandle = mssql_connect($myServer, $myUser, $myPass)
or die("Couldn't connect to SQL Server on $myServer. Error: " . mssql_get_last_message());
所以我注意到我可以连接SA(服务器管理员),但我无法连接我的用户名,这是一个拥有大量权限的域用户。
唯一一个给我错误信息的是用户名是zach@DOMAIN.net。
Couldn't connect to SQL Server on sql2008. Error: Login failed for user 'zach@DOMAIN.net'.
这让我相信服务器上必须有一些允许登录的设置,但我不知道在哪里看。
的 的 * 更新的 * ** *
因此,在查看SQL Server Management Studio之后,我意识到它接受来自sysadmin服务器角色组的登录。所以我将我的AD帐户添加到该组,但我仍然无法连接我的用户名。我使用了他们上面列出的三种方法。还有第四种选择吗?
话虽如此,有没有办法告诉它连接到一个不是sysadmin的组?出于安全原因,我宁愿不连接到sysadmin?
答案 0 :(得分:0)
转到登录帐户属性,必须有一些关于状态的选项卡,其中包含grant和deny选项...我在这台PC上没有SQL。它看起来像这样:
我没有进入Active Directory那么多,但我尝试在SQL Server中为登录帐户添加DOMAIN/GROUP
。看看这篇文章,它教会了如何为域中的组添加登录。 How to add Active Directory user group as login in SQL Server
答案 1 :(得分:0)
我发现的解决方案是SQL Server不喜欢我尝试使用域帐户的事实。我意识到我创建的任何SQL用户帐户都可以正常工作,就在我尝试使用AD帐户时它无效。
我确信有些人会想要使用AD,但在这种情况下我不需要它。