我的 SQL Server 设置为使用 Windows 身份验证。如果我直接从 Windows 7 Ultimate x64 计算机连接到域,SQL Management Studio (SSMS) 将允许我使用 Windows 身份验证进行身份验证。但是,如果我通过 VPN 连接(从未加入域的其他计算机),则不会。
如果我使用以下命令行启动 SSMS:
C:\Windows\system32>runas /netonly /user:domainname\username
"C:\Program Files (x86)\Microsoft SQL...\ssms.exe"
然后使用 Windows 身份验证连接到 SQL Server(在域中)就可以正常工作。
我想保存这些凭据,这样我就不必从命令行启动 SSMS 或修改快捷方式。我知道我可以使用 SysInternals ShellRunAs 扩展来执行此操作,但我每次都必须输入我的域用户名和密码,然后按住 Shift 键并右键单击才能看到该菜单选项。
Windows 凭据管理器似乎旨在解决此问题,并且适用于网络共享。但是,它似乎不适用于 SSMS。有什么建议吗?
我尝试使用/savecred
带有 runas 的选项来创建必要的凭据,但这似乎与选项不兼容/netonly
。运行上述命令行并添加/savecred
只会显示runas
帮助屏幕。
答案1
使用 Windows 凭据管理器。
使用以下详细信息创建一个新的 Windows 凭据:
- 数据库服务器名称.域.com:1433
- 域\用户 ID
- 密码
还在 TARGET 中使用以下内容为 SSMS 创建快捷方式:
C:\Windows\System32\runas.exe /user:domain\userid /netonly "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\binn\VSShell\Common7\IDE\Ssms.exe -nosplash"