0

好的,所以这是一个修改后的帖子,因为我可以看到一些反对票,而对我来说,解决方案仍然无法正常工作。作为背景,从 Visual Studio 部署到 Azure 中的云服务会将反恶意软件重置回原始状态(禁用)。所以我试图默认启用它。

到目前为止采取的步骤:

  1. 在主 Web 项目中创建 Startup 文件夹
  2. 将以下内容添加到此文件夹 startup.cmd 文件中:
    Powershell -ExecutionPolicy Unrestricted .\Startup\startup.ps1 >> "c:\logs\startup_ps_log.txt"
  1. 将 powershell 脚本 startup.ps1 添加到同一文件夹:
    
    Set-AzureServiceAntimalwareExtension -ServiceName "myservicename" -AntimalwareConfiguration -Slot "Production"
  1. 修改云服务项目中的ServiceDefinition.csdef文件调用启动任务:
    <启动优先级="-2">
        <Task commandLine="startup\startup.cmd" executionContext="elevated" taskType="background" />      
    </启动>

我部署我的解决方案并得到相同的结果。反恶意软件仍处于禁用状态。如果我在 VM 中启动 RDP 会话并询问日志,我可以看到它正在运行,但找不到 AzureServiceAntimalwareExtension 的特定 powershell 命令/脚本:

    Set-AzureServiceAntimalwareExtension :术语
    'Set-AzureServiceAntimalwareExtension' 未被识别为
    cmdlet、函数、脚本文件或可运行的程序。检查拼写
    名称,或者如果包含路径,请验证路径是否正确并重试。

有什么建议么?

4

4 回答 4

1

问题似乎是您试图从云服务本身中激活 AntiMalware。但它应该在运行部署的计算机上完成,并且可以通过用于 VM 的 Visual Studio 或通过用于云服务的 ARM PowerShell CmdLets 完成。

请在此处查看此文档

于 2018-02-03T11:14:22.577 回答
1

术语“Set-AzureServiceAntimalwareExtension”未被识别为 cmdlet、函数、脚本文件或可运行程序的名称。检查名称的拼写,或者如果包含路径,请验证路径是否正确并重试。

PowerShell 会话不知道该函数是什么,这意味着尚未导入包含代码的模块。

在你的函数调用之前添加这一行给它一个机会;-)

Import-Module Azure* -ErrorAction Stop

如果由于任何原因失败,那么很可能该模块在您的目标上不可用,因此您需要安装它!

于 2018-02-06T08:52:43.807 回答
0

在您的第 3 步中,您写道:

Set-AzureServiceAntimalwareExtension -ServiceName "myservicename" -AntimalwareConfiguration -Slot "Production"

但是你没有在之后指定xml文件-AntimalwareConfiguration

于 2018-02-01T18:35:08.647 回答
0

注意: Microsoft Antimalware 在云服务平台中安装为禁用状态,需要 Azure 应用程序执行操作才能启用它。

使用Set-AzureServiceAntimalwareExtension Antimalware cmdlet 为您的云服务启用和配置 Microsoft Antimalware,如记录在

https://docs.microsoft.com/en-us/powershell/module/Azure/Set-AzureServiceAntimalwareExtension?view=azuresmps-4.0.0

于 2017-11-25T19:03:17.403 回答