运行自定义脚本扩展针对Azure的应用服务
问题描述:
我能够用设置AzureRmVMCustomScriptExtension对虚拟机执行自定义脚本扩展,发现Azure的应用服务已经扩展列为他们的选择之一:运行自定义脚本扩展针对Azure的应用服务
扩展添加功能您的应用服务。点击添加查看 可用扩展名列表。
我想实现的是针对承载App Service的虚拟机运行一些PowerShell,但无法找到像Set-AzureRmVMCustomScriptExtension这样的Resource Manager cmdlet。一个例子是修改托管我的网站的IIS的一些目录的安全性,以禁用匿名访问,并向我的网站的目录添加一些文件。我能够使用针对IaaS Azure虚拟机的脚本来实现此功能,并且想知道这是否会对应用程序服务起作用,如果是这样,那么应该如何定位应用程序服务的虚拟机。
我走,因为这PowerShell中的一部分关键行动是:
- 禁用匿名访问某些目录在IIS
- 限制访问某些文件类型
- 编辑现有的XML文件
- 添加新文件到目录(通过CDN下载)
登录到Kudu界面(Mysite.scm.azure ... )我能够通过调试控制台选项执行一些PowerShell,所以我想通过Azure Automation可以通过Azure Automation运行PowerShell,除了使用Kudu PowerShell界面之外,我还可以使用Kudu PowerShell界面创建目录。普通的旧的创建项目cmdlet。
答
应用服务与虚拟主机有很大不同。在应用程序服务中,您永远无法直接访问虚拟机,并且通常无法运行影响虚拟机全局级别的任何脚本。
相反,您只能影响组成Web应用程序的文件,并且所有文件都在sandbox下运行。
影响Web应用程序中的文件是我的核心要求之一。这最好如何实现?防爆。创建一个添加所需文件的扩展。我的计划是通过Azure自动化执行此操作 – Kode
您可以使用Kudu vfs或zip API将文件上传到您的Web应用程序。您应该能够从Azure自动化调用 –
正是我在寻找的东西。有关如何通过Azure自动化修改IIS或运行PowerShell命令的任何想法,前提是我可以在Kudu调试控制台中执行这些命令? (我已经更新了原始文章的详细信息) – Kode