You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何Windows密码在PowerShell的Get-SqlInstance凭据请求中失效?

问题分析:Get-SqlInstance用Windows凭据连不上SQL Server但SSMS可以的原因

核心问题:参数用途误解

Get-SqlInstance的-Credential参数不支持Windows身份认证,它是专门给SQL Server登录账号(而非Windows本地/域账号)设计的。

具体原因拆解

  • 参数逻辑不匹配:
    SSMS的Windows认证是通过SSPI协议直接传递当前系统的Windows身份,不需要手动输入密码;而你用-Credential传递laptop-ql9k5dk6\david这种Windows格式账号时,SqlServer模块会把它当作SQL登录账号去验证——但你明确说SQL登录用户名和这个Windows用户不同,所以SQL Server里根本没有对应这个名字的SQL登录,自然验证失败,哪怕密码正确也没用。

  • Windows认证的正确姿势:
    如果要使用Windows身份认证连接,直接去掉-Credential参数即可:

    Get-SqlInstance -ServerInstance "laptop-ql9k5dk6\sqlexpress2"
    

    这条命令会自动用当前终端运行的Windows身份(也就是laptop-ql9k5dk6\david)去连接,和SSMS的Windows认证逻辑完全一致。

内容的提问来源于stack exchange,提问作者Dave

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 11:31:34