无需先向 AD 域进行身份验证即可登录 MsSQL

无需先向 AD 域进行身份验证即可登录 MsSQL

我需要读取/写入使用 AD 验证用户的 MsSQL DB。我在该域上有一个帐户,并且已被授予 MsSQL DB 上的适当权限,但由于我的 PC 未通过该 AD 域的验证,因此我无法访问 MSSQL。

通常,当我连接到该域上的任何服务器资源(如文件、网络或打印服务器)时,我只需要在手动输入我的凭据。

MsSQL 则不同。它不给我手动登录的机会。

在 ODBC 驱动程序中,它只有两个选择。使用 Windows NT 身份验证(不允许我输入用户名)或使用 SQL Server 身份验证(这不起作用,因为此数据库使用 Active Directory 而不是本地列表)

那么,如果我的 PC 不属于身份验证域,我该如何登录 MsSQL 服务器呢?请记住,我确实拥有有效的域凭据,并被授予了正确的权限。只是我的 PC 不在域中。

感谢您提出的任何建设性建议。我会回答您提出的任何与企业备份和恢复、灾难恢复、存储区域网络或网络附加存储相关的问题。我的专业领域。

答案1

好问题。我本来想说这是不可能的,直到我尝试了。您正在尝试从您的计算机不属于的域获取凭据。这博客演示如何调用鲁纳斯使用 /netonly 来实现这一点。需要 /netonly 是因为您的域帐户无法登录到本地计算机。

在我的家用电脑上,通过 VPN 进行工作,没有域信任,我只是使用 Windows Auth 对公司的 Sql Server 进行了身份验证,如下所示

runas /user:mycompany\myname /netonly ssmsee.exe

这将启动 Sql Management Studio express。您可以通过这种方式启动任何使用数据库连接的程序。上述技巧似乎也适用于资源管理器和命令 shell。虽然这是一个很酷的技巧,但使用 Sql 身份验证更简单。

答案2

IBM 的此技术说明似乎表明,使用命名管道时会发生这种情况。如果您配置 TCP/IP 连接,这可能会缓解您的问题

http://www-01.ibm.com/support/docview.wss?uid=swg21133904

答案3

我从未见过您描述的行为,请尝试按照 Kevin Kuphal 所说的使用 TCP 进行连接。

答案4

如果您按住 Shift 并单击鼠标右键,则应该能够“以其他用户身份运行” - 然后您可以指定要使用的网络凭据,以便在正确的活动目录上下文中启动 SSMS。如果您使用的是 Vista,则可以安装免费工具,该工具会添加 Microsoft 删除的上下文菜单(幸运的是,Windows 7 中又重新添加了)- 在 Google 上搜索:sysinternals 以其他用户身份运行

如果可行,请告诉我们吗?

相关内容