Windows 密码不适用于 Powershell 凭据请求

问题描述 投票:0回答:2

我知道我可以为我自己的脚本设置 Powershell 凭据 Get-Credential。但是当我在PS终端使用下面的命令Get a SQL Server instance on a computer时:

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

我预计我会被要求输入我的 Windows 密码。

这是我的想法:

通过 MS SQL Server Management Studio(使用 Windows 身份验证)登录到我的 SQL Server 实例 (

laptop-ql9k5dk6\david
) 使用我已经登录的状态。否则我需要我的 Windows 密码。

因为我的脚本要求

laptop-ql9k5dk6\david
的密码;我想这一定是我的 Windows 密码?

所以。为什么当我的 PowerShell 一行代码(如上所示)要求我输入密码时,我的 Windows 密码失败?

PowerShell credential request
Enter your credentials.
Password for user laptop-ql9k5dk6\david: **************

Get-SqlInstance: Failed to connect to server laptop-ql9k5dk6\sqlexpress2.

在 MSSM 上,我也可以通过 SQL 登录登录,但是用户名与上面的 Windows 身份验证用户不同。

注意:我当前的 Windows 密码是好的。我经常使用它而没有犯错误/留下 CAP 等。

sql-server windows powershell authentication credentials
2个回答
0
投票

密码不正确:一种可能是您输入了错误的密码。仔细检查以确保您输入的 Windows 帐户密码正确。

锁定帐户:如果您多次输入错误密码,您的帐户可能会被锁定。这会阻止您在解锁之前访问您的帐户。您可以按照系统管理员提供的步骤尝试解锁您的帐户。

密码过期:也可能是您的 Windows 密码已过期。在这种情况下,您需要重置密码才能登录。您可以按照系统管理员提供的步骤重置密码。

凭据管理器:如果您从不同的机器或域运行 PowerShell 脚本,您的 Windows 凭据可能无法识别。在这种情况下,您可以尝试将您的凭据存储在 Windows 凭据管理器中。您可以通过在命令提示符或 PowerShell 中运行 cmdkey 命令来执行此操作。

系统权限:如果您尝试运行需要提升权限的 PowerShell 脚本,您可能需要以管理员身份运行 PowerShell。右键单击 PowerShell 图标并选择“以管理员身份运行”。


0
投票
$role = "sql"
$user = read-host "user for $role"
$pwd = read-host "password:" -AsSecureString
$cred = New-Object System.Management.Automation.PSCredential -ArgumentList $user, $pwd

Get-SqlInstance -Credential $cred -ServerInstance "laptop-ql9k5dk6\sqlexpress2"
© www.soinside.com 2019 - 2024. All rights reserved.