使用PowerShell更改Azure VM的密码

燃烧器B

我尝试过这种方法来更改Azure VM的密码:

$resgroup = "rsource1"
$vmName = "virtualmachine1"

$VM = Get-AzVM -ResourceGroupName $resgroup -Name $vmName 

$Credential = Get-Credential

$VM | Set-AzureVMAccessExtension    –UserName $Credential.UserName `
                                    –Password $Credential.GetNetworkCredential().Password

$VM | Update-AzVM

但我不断收到此错误:

你调用的对象是空的。

当我console.log的值$Credential.UserName$Credential.GetNetworkCredential().Password得到我输入用户名密码的值时

我在这里想念什么?

公路跑者

我从未用过Set-AzureVMAccessExtension,但是我用过等效的Az PowerShell Set-AzVMAccessExtension它需要您-Credential $Credential而不是-UserName和通过-Password

您可以尝试使用我之前制作的此脚本来重置Azure VM的密码:

# Replace these values with your own
$resourceGroupName = "Servers-RG"
$vmName = "server1"

# Get the VM into an object
$vm = Get-AzVM -ResourceGroupName $resourceGroupName -Name $vmName 

# Store credentials you want to change
$credential = Get-Credential -Message "Enter your username and password for $vmName"

# Store parameters in a hashtable for splatting
# Have a look at https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_splatting?view=powershell-7
$extensionParams = @{
    'VMName' = $vmName
    'Credential' = $credential
    'ResourceGroupName' = $resourceGroupName
    'Name' = 'AdminPasswordReset'
    'Location' = $vm.Location
}

# Pass splatted parameters and update password
Set-AzVMAccessExtension @extensionParams

# Restart VM
# Don't need to pass any switches since they are inferred ByPropertyName
# Have a look at https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_pipelines?view=powershell-7
$vm | Restart-AzVM

我发现在重新启动VM之前不会发生密码更新,因此Restart-VM是必需的。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用应用注册更改 Azure VM 本地管理员密码的权限

使用 Azure 密钥保管库机密中的 VM 管理员密码创建 Azure VM

更改密码后无法登录Fedora 20(VM)到KDE

Azure - 禁用 VM 代理以防止修改 root 密码

Azure VM --generate-ssh-keys,无密码

使用封装在Python中的Azure CLI将keyvault的密钥作为Azure VM的密码传递

如何使用 Azure Key Vault 跨订阅级别对所有 Azure VM 使用单个 Azure VM 用户名和密码

Windows Server 2016 VM RDP用户无法更改自己的密码

使用Azure PowerShell同时停止多个Azure VM

如何在 Azure VM Scaleset 中禁用 RC4 密码

Salt-cloud使用什么密码或密钥登录新创建的OpenStack VM Minion?

如何使用 powershell 为用户获取 Azure SQL DB 密码

使用Azure AD帐户时强制更改密码问题

Azure AD使用图形API更改临时密码

使用Azure Graph API更改过期密码

如何使用 PowerShell 收集 Azure VM 自动关闭时间?

如何使用PowerShell在Azure中运行VM脚本的ResourceId?

无法使用 powershell 远程连接到 Azure VM

在管道中使用PowerShell任务Sysprep Azure VM

使用Powershell将文件上传到100个Azure VM

不使用Powershell从现有VHD创建Azure VM

如何通过Powershell找出Azure VM使用的Windows版本?

在 VM 上使用 az 安装程序 - 通过 azure powershell

如何使用 Azure PowerShell 获取 VM 的 MAC 地址

使用 Powershell CLI 獲取 Azure VM 的 NSG

使用C#更改Azure VM角色大小

Azure VM中的远程Powershell

使用Azure VM时,尝试使用VMAccessAgent重置管理员密码时为什么会出现“无法使用指纹找到证书”的提示?

使用 Azure AD,如何使用临时密码发送更改密码请求?