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

无法使用VMAccessAgent为Azure Windows虚拟机新建用户

问题场景

基于现有快照创建Windows虚拟机后,需要通过Azure Java SDK调用VMAccess虚拟机扩展添加新的本地用户名与密码。使用常规的密码重置代码操作时,仅能更新已存在用户的密码,无法完成新用户创建。

原有操作代码:

virtualMachine.update().defineNewExtension("VMAccessAgent")
.withPublisher("Microsoft.Compute")
.withType("VMAccessAgent")
.withVersion("2.3")
.withProtectedSetting("username", user)
.withProtectedSetting("password", plainTextPassword)
.attach().apply();
根因

VMAccess 2.3版本扩展的默认逻辑为:仅对系统中已存在的用户名执行密码重置操作,不会主动创建新账号。只有显式传入新建管理员用户的参数时,扩展才会执行新用户创建流程。

解决方法

在扩展的受保护配置中追加UserNameIsAdmin参数,值设为true,即可触发新用户创建逻辑,新建的账号默认会加入本地管理员组。

修正后代码:

virtualMachine.update().defineNewExtension("VMAccessAgent")
.withPublisher("Microsoft.Compute")
.withType("VMAccessAgent")
.withVersion("2.3")
.withProtectedSetting("username", user)
.withProtectedSetting("password", plainTextPassword)
.withProtectedSetting("UserNameIsAdmin", true)
.attach().apply();
操作提示
  • 传入的明文密码必须满足Windows本地账号密码复杂度要求,否则扩展执行会报错
  • 如果虚拟机上已经部署过同名的VMAccessAgent扩展,不要使用defineNewExtension接口,需改用更新已有扩展的接口传入配置,避免扩展部署冲突
  • 该方式默认创建本地管理员账号,如需创建普通权限用户,可在账号创建完成后通过自定义脚本扩展调整用户组权限

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.01 00:04:09