当通过REST API在Azure上部署具有Windows2008-SQL-Server模板的VM时,我们需要使用powershell脚本配置WinRM以启用基本身份验证。为此,我们使用Azure扩展程序' CustomScriptExtension'从我们的blobstorage加载脚本并运行它。
脚本输出有错误,Powershell没有响应端口5985.
代码:
winrm quickconfig -q
winrm set winrm/config/winrs '@{MaxMemoryPerShellMB="300"}'
winrm set winrm/config '@{MaxTimeoutms="1800000"}'
winrm set winrm/config/service '@{AllowUnencrypted="true"}'
winrm set winrm/config/service/auth '@{Basic="true"}'
对于每个脚本的命令,我们都有以下错误:
Message = Access is denied. \\n\\nError number: -2147024891 0x80070005\\nAccess is denied.
完成VM的配置后,我们可以使用远程桌面登录,如果我们从那里启动powershell脚本,它就完美无缺。
经过一些研究,我们发现这个article提出了一个可能的解决方案,但问题是它暴露了一个安全问题,因为脚本需要一个管理员密码作为参数。
我们正在寻找其他建议或解决方法。我们正在使用完全自动化的工作流程,所以遗憾的是“手工制作的解决方案”对我们来说不是一个选择。提前感谢您的帮助。
答案 0 :(得分:0)
我这样做是为了让Chef客户端引导程序在Azure Windows VM上运行。就我而言,除了你所做的,我还必须在Windows防火墙上打开5985,并在云服务上启用5985端点。这是一个PITA,但它完成了工作。