在SQL Server Management Studio中连接不同的Windows用户(2005或更高版本)

。_饼干妹妹 提交于 2020-03-17 13:28:38

某厂面试归来,发现自己落伍了!>>>

SQL Server Management Studio 2005(或更高版本)中是否有一种方法可以更改Windows身份验证用户(就像在SQL Server 2000及更早版本中一样)?

这是常规连接属性对话框(请注意选择Windows Auth时灰色的UID / PWD):

仅供参考 - 一种解决方法是使用runas但我正在寻找一种解决方案,允许我跨多个服务器(以及跨多个域)使用多个Windows帐户。


#1楼

我发现的另一种方法是转到“开始”>“控制面板”>“存储的用户名和密码”(Windows 7中的管理工具>凭据管理器)并添加将与“runas”命令一起使用的域帐户。

然后,在SQL Management Studio 2005中,只需选择“Windows身份验证”并输入您要连接的服务器(即使您看到灰色的用户仍然是本地用户)......并且它可以正常工作!

别问我原因! :)

编辑:确保在凭据管理器中的服务器名称后面包含“:1433”,或者由于不信任域而可能无法连接。


#2楼

虽然在单个SSMS实例中无法将多个服务器连接为不同的用户,但您正在寻找的是以下RUNAS语法:

runas /netonly /user:domain\username program.exe

当您使用“/ netonly”开关时,即使没有设置信任,您也可以使用您当前不是其成员的域上的远程凭据登录。 它只是告诉runas凭据将用于访问远程资源 - 应用程序作为当前登录用户与本地计算机交互,并作为您已提供凭据的用户与远程计算机进行交互。

您仍然必须运行多个SSMS实例,但至少您可以在每个实例中以不同的Windows用户身份进行连接。


例如: runas /netonly /user:domain\\username ssms.exe


#3楼

这些答案都没有达到我的需要:使用与我在本地计算机上登录时不同的域帐户登录远程服务器,并且它是跨越VPN的客户端域。 我不想成为他们的域名!

而是在“连接到服务器”对话框中,选择“Windows身份验证”,单击“选项”按钮,然后在“其他连接参数”选项卡上输入

user id=domain\user;password=password

SSMS不会记住,但它将与该帐户连接。


#4楼

runas /netonly /user:domain\\username program.exe命令仅适用于Windows 10

  • 将其保存为批处理文件
  • 以管理员身份运行

当作为普通用户运行命令批处理时,我在前面的评论中遇到了一些用户提到的错误密码问题。


#5楼

一些PowerShell魔法会起到作用:

cmdkey /add:"SERVER:1433" /user:"DOMAIN\USERNAME" /pass:"PASSWORD"

然后只需选择Windows身份验证

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!