跳至主内容

createPatchManagementMaintenanceWindow

此方法用于创建可在补丁管理中使用的维护时段。

参数

参数

描述

包含在请求中

类型

取值

name

为补丁管理窗口指定的名称。

必填

字符串

可选值:

  • 长度必须介于1至80个字符之间。

  • 必须唯一。

allowChangeByOtherUsers

指示目标是否为客户公司。

必填

布尔值

无额外要求。

settings

使用此数组为您正在创建的维护窗口配置补丁管理设置。

必填

对象数组

参考 对象

对象

downloadSettings

参数

描述

类型

cachingServers

用于指定要使用的补丁缓存服务器。数组中的位置应解释为优先级。

对象数组

包含以下信息:

  • id - 字符串,补丁缓存服务器的ID。

fallbackOnDirectDownload

确定是否启用直接下载设置。

布尔值

无额外要求。

installPatchesSettings

参数

描述

类型

enabled

表示启用时是否自动应用补丁。对应 应用补丁 GravityZone 控制台中的 开关。

布尔值

无额外要求。

ifMissedRunAsSoonAsPossible

表示若任务未执行,将尽快重试。

布尔值

无额外要求。

specificVendorAndProduct

指定您希望包含或排除打补丁的供应商和产品。

对象

包含以下信息:

  • enabled - 表示是否允许包含或排除。

    类型:布尔值

  • type - 选择包含或排除供应商或产品不打补丁。

    类型:整数

    可能取值:

    • 1 - 对于包含项,

      2 - 对于排除项。

  • vendorProductsPairs - 用于选择产品和供应商。

    类型:对象数组

    更多信息请参阅 vendorProductsPairs .

postponeReboot

指示是否希望在应用补丁后推迟系统重启。

对象

包含以下信息:

  • option - 指示如何推迟重启。

    类型:整数

    可能取值:

    • 0 - 用户可推迟系统重启至更合适的时间。

    • 1 - 用户只能在特定时间间隔内推迟系统重启。

      若选择此值,则请求中必须同时包含 afterMinutes , afterCustomMessagebetween 属性。

    • 2 - 系统将在指定分钟后自动重启。若选择此项,则 postponeReboot 对象还必须包含: afterMinutes , afterCustomMessage .

      若赋值此项,则请求中必须同时包含 afterMinutesafterCustomMessage 属性。

  • afterMinutes - 重启延迟的分钟数。

    类型:整数

    可选值: 10 , 30 , 45 , 60 .

  • afterCustomMessage - 将在执行重启的终端上显示的文本。

    类型:字符串

    可选值:最大128字符的任意字符串。

  • between - 重启执行的时间区间。

    类型:对象

    更多信息,请参阅???。

updateType

用于启用并应用特定设置至安全或非安全更新。

对象

包含以下信息:

  • securityPatchesSettings - 启用并配置安全补丁。

    • enabled - 布尔值,启用安全补丁功能。

    • scheduler - 设置特定调度计划。

      类型:对象

      该参数必须包含在对象中,若满足以下条件:

      • enabled 参数位于 securityPatchesSettings 对象中且值为 true

      • useSameScheduler 参数位于 scanPatchesSettings 对象中且值为 false

      该参数将在以下情况下被忽略:

      • useSameScheduler 参数位于 scanPatchesSettings 对象下且具有 true 值。

      更多信息请参阅???。

    • oldScheduler - 使用备用系统设置特定调度方案。

      类型:对象

      该参数必须包含在对象中,当满足以下条件时:

      • enabled 参数位于 securityPatchesSettings 对象下且具有 true 值。

      • useSameScheduler 参数位于 scanPatchesSettings 对象下且具有 false 值。

      该参数将被忽略,当满足以下条件时:

      • useSameScheduler 参数位于 scanPatchesSettings 对象下且具有 true 值。

      更多信息请参阅???。

  • nonSecurityPatchesSettings - 启用并配置非安全补丁。

    • enabled - 布尔值,启用非安全补丁功能。

    • scheduler - 设置特定调度计划。

      类型:对象

      在以下情况下必须包含此参数:

      • 如果 enabled 参数位于 nonSecurityPatchesSettings 对象中且值为 true

      • 如果 useSameScheduler 参数位于 scanPatchesSettings 对象中且值为 false

      在以下情况下将忽略此参数:

      • useSameScheduler 参数位于 scanPatchesSettings 对象具有 true 值。

      更多信息,请参阅???。

    • oldScheduler - 使用备用系统设置特定计划。

      类型:对象

      在以下情况下必须包含此参数:

      • 如果 enabled 参数在 nonSecurityPatchesSettings 对象中具有 true 值。

      • 如果 useSameScheduler 参数在 scanPatchesSettings 对象中具有 false 值。

      在以下情况下将忽略此参数:

      • useSameScheduler 参数在 scanPatchesSettings 对象中具有 true 值时。

      更多信息,请参阅???。

  • manuallyApprovedPatchesSettings - 启用并配置手动批准的补丁。

    • enabled - 布尔值,启用手动批准补丁功能。

    • scheduler - 设置特定调度计划。

      类型:对象

      在以下情况下必须包含此参数:

      • 如果 enabled 参数位于 securityPatchesSettings 对象中且值为 false

      • 如果 useSameScheduler 参数位于 scanPatchesSettings 对象中且值为 false

      在以下情况下此参数将被忽略:

      • useSameScheduler 参数位于 scanPatchesSettings 对象中且值为 true 值。

      更多信息请参阅 调度器 .

    • 旧调度器 - 使用备用系统设置特定调度方案。

      类型:对象

      在以下情况下该参数必须包含在对象中:

      • 启用 参数位于 安全补丁设置 对象中且值为 false

      • 使用相同调度器 参数位于 扫描补丁设置 对象中且值为 false

      在以下情况下该参数将被忽略:

      • 使用相同调度器 参数位于 扫描补丁设置 对象中且值为 true 时。

      更多信息,请参阅???。

    注意

    如果 启用 参数位于 securityPatchesSettings 对象中的 true 值,则 调度器oldScheduler 设置位于 manuallyApprovedPatchesSettings 下将被忽略。

    启用 参数位于 securityPatchesSettings 对象中且 useFallbackSchedule 设置位于 scanPatchesSettings 参数均为 false 值,则必须 调度器 设置位于 manuallyApprovedPatchesSettings 中包含在请求中。

    enabled 参数位于 securityPatchesSettings 对象中且值为 false ,同时 useFallbackSchedule 设置位于 manuallyApprovedPatchesSettings 中且值为 true ,则必须将 oldScheduler 设置包含在请求中的 manuallyApprovedPatchesSettings 下。

manuallyApprovedPatchIds

唯一补丁ID列表。

字符串数组

补丁ID必须有效且属于创建维护窗口的公司。

提示

可通过 getManuallyApprovedPatches 方法获取特定公司的手动批准补丁ID列表。

警告

  • enabled 参数位于 installPatchesSettings 对象已分配了 true 值,您需要将 true 值分配给以下参数之一:

    • 位于 enabled 参数下的 securityPatchesSettings 选项。它们可在 updateType 对象下找到,该对象位于 installPatchesSettings 对象内。

    • 位于 enabled 参数下的 nonSecurityPatchesSettings 选项。它们可在 updateType 对象下找到,该对象位于 installPatchesSettings 对象内。

  • 如果 enabled 参数在 installPatchesSettings 对象中分配了 false 值,您需确保这些参数均未包含 true 值已分配:

    • 位于 enabled 参数下的 securityPatchesSettings 选项。它们可以在 updateType 对象下找到,该对象位于 installPatchesSettings 对象内。

    • 位于 enabled 参数下的 nonSecurityPatchesSettings 选项。它们可以在 updateType 对象下找到,该对象位于 installPatchesSettings 对象内。

  • 如果 enabled 参数在 installPatchesSettings 对象中被分配了 true 值,则 enabled 参数在 scanPatchesSettings 对象还必须具有 true 值赋值。

vendorProductsPairs

参数

描述

类型

os

供应商-产品对兼容的操作系统。

当特定供应商-产品对兼容多个操作系统时,可使用此属性。

整数

可选值:

  • 1 - Windows

  • 2 - Linux

  • 3 - macOS

默认值:

  • 1 ,若 id 属性所属的 vendor 对象仅包含数字。

  • 2 ,若 id 属性所属的 供应商 对象包含字母。

重要提示

提供给此属性的值必须与请求中指定的供应商-产品对兼容。使用无效组合将导致错误。

供应商

包含一个或多个供应商。

对象

该对象包含以下属性:

  • id - 供应商的ID。

    类型:字符串。

产品

包含一个或多个产品

对象数组

该对象包含以下属性:

  • id - 产品的ID。

    类型:字符串。

介于

参数

描述

类型

startHour

事件设定开始的小时。

整数

其值范围在 023 .

startMinute

事件设定的开始分钟数。

整数

取值范围为 059 .

endHour

事件设定的结束小时数。

整数

取值范围为 startHour23 .

endminute

事件设定的结束分钟数。

整数

取值范围为 059 .

注意

startHour:startMinute 必须早于 endHour:endMinute

调度器

参数

描述

类型

取值

recurrence

设置特定任务的执行频率

整数

可选值:

  • 1 - 立即执行

  • 3 - 每周执行。此时必须同时包含 weeklyRecurrence 对象

    若指定该值,对象中必须同时包含 weeklyRecurrence 参数

  • 4 - 每月执行。此时必须同时包含 monthlyRecurrence 对象

    若选择该值,对象中必须同时包含

    monthlyRecurrence 参数

startDate

当选择当日时表示当前纪元时间(10位字符,秒级精度)

整数

必须大于 0 .

介于

设置任务运行的时间间隔

对象

更多信息请参阅 between .

weeklyRecurrence

决定每周任务的重复频率。

该参数仅在 recurrence 设置为 3 .

对象

包含以下信息:

  • every - 设置任务运行间隔的时间跨度,以周为单位。

    类型:整数

    可选值: 1 - 4 .

  • days - 设置任务在一周中的特定日期重复。

    类型:整数数组

    可选值: 0 (周日)- 6 (周六)。

monthlyRecurrence

决定月度任务的重复频率。

此参数仅在 recurrence 设置为 4 .

Object

包含以下信息:

  • every - 设置任务之间的时间间隔,以月为单位。

    类型:整数

    可选值: 1 - 12 .

  • frequency - 设置重复任务的频率。

    类型:整数

    可选值:

    • 0 - 在每月的特定日期运行。

      若选择此值,对象必须包含 frequencyDayNumber 参数。

      注意

      frequency0 时, monthlyRecurrence 对象

    • 1 - 在每月的第一个 frequencyDayOfWeek 运行。

    • 2 - 在每月的第二个 frequencyDayOfWeek 运行。

    • 3 - 在每月的第三个 frequencyDayOfWeek 运行。

    • 4 - 在每月的第四个 frequencyDayOfWeek 运行。

    • 5 - 在每月的最后一个 frequencyDayOfWeek 运行。

      注意

      frequency 的值为 1 , 2 , 3 , 45 时,对象必须包含 frequencyDayOfWeek 参数。

  • frequencyDayNumber - 表示任务将在每月的第几天运行。

    类型:整数

    可能取值: 1 - 31

  • frequencyDayOfWeek - 表示任务将在每周的星期几运行。

    类型:整数

    可能取值: 0 (周日)- 6 (周六)。

oldScheduler

参数

描述

类型

重复周期

设置任务运行的频率

整数

可选值:

  • 1 - 表示立即执行

  • 2 - 表示每天

  • 3 - 表示每周

起始小时

事件设定的开始小时

整数

可选值: 0 - 23 .

起始分钟

事件设定的开始分钟

整数

可选值: 0 - 59 .

天数

设置任务在一周中特定日期重复执行

整数数组

可选值: 0 (周日) - 6 (周六)。

scanPatchesSettings

参数

描述

类型

enabled

表示是否自动扫描以搜索新补丁。对应 扫描补丁 开关位于 GravityZone 控制台中。

布尔型

无额外要求。

runOnSystemChanges

表示安装新支持的应用程序时是否扫描可用补丁。对应 安装新应用程序时智能扫描补丁 开关位于 GravityZone 控制台中。

布尔型

无额外要求。

useFallbackSchedule

在当前计划系统( schedule )与备用系统( oldScheduler ).

字符串

可选值:

  • enabled - 必须将 oldScheduler 参数包含在 installPatchesSettings .

  • disabled - 必须将 scheduler 参数包含在 installPatchesSettings .

useSameSchedule

将此计划设为所有任务的默认计划。对应 GravityZone 控制台中 “对所有目标操作使用相同计划” 开关。

布尔值

无额外要求。

scheduler

设置特定计划。

对象

包含以下信息:

  • recurrence - 整数,设置特定任务的执行频率。可选值如下:

    • 3 - 每周。此时必须同时包含 weeklyRecurrence 对象。

    • 4 - 每月。此时必须同时包含 monthlyRecurrence 对象。

  • startDate - 整数,若选择当日则表示为当前纪元时间(10位字符,秒级精度)。该值应大于 0 .

  • between - 对象,设置任务运行的时间区间。包含以下组件:

    • startHour - 整数,介于 023

    • startMinute - 整数,介于 059

    • endHour - 整数,介于 startHour23

    • endMinute - 整数,介于 059

      注意

      startHour:startMinute 必须早于 endHour:endMinute

  • weeklyRecurrence - 对象,当 recurrence = 3 。包含组件:

    • every - 整数,取值范围介于 14 。设置任务运行的时间间隔(以周为单位)。

    • days - 整型数组,取值范围介于 06 (0代表周日,6代表周六)。设置任务每周在特定星期几重复执行。

  • monthlyRecurrence - 对象,当 recurrence = 4 。组件:

    • - 整数,取值范围在 112 之间。设置任务之间的时间间隔,以月为单位。

    • 频率 - 整数,设置重复任务的频率。可选用以下值之一:

      • 0 - 在特定日期运行

      • 1 - 在每月第一个 频率星期几 运行。

      • 2 - 在每月第二个 频率星期几 运行。

      • 3 - 在每月第三个 频率星期几 运行。

      • 4 - 在每月第四个 频率星期几 运行。

      • 5 - 在每月最后一个 频率周几 在月份中的周次。

        注意

        频率 值为 0 时, 每月重复规则 对象必须同时包含 频率日编号 。若 频率 值为 1 , 2 , 3 , 45 时, 每月重复规则 对象必须同时包含 频率周几 .

    • 频率日编号 - 整数,表示任务将在当月第几日执行。取值范围为 131 .

    • frequencyDayOfWeek 整数,表示任务在一周中的哪一天运行。取值范围在 06 之间,其中0代表 周日 ,6代表 周六 .

注意

enabled = trueuseFallbackSchedule = false .

oldScheduler

使用备用系统设置特定计划。

对象

包含以下信息:

  • recurrence - 整数,设置任务运行的频率。可选取值如下:

    • 2 - 每日

    • 3 - 每周

  • startHour - 整数。取值范围在 023 .

  • startMinute - 整数。取值范围在 059 .

  • days - 整数数组,取值范围在 06 之间(0表示周日,6表示周六)。设置任务在一周中的特定日期重复执行。

    注意

    enabled = true 时必须包含此参数。若 recurrence = 2 .

返回值

本方法返回布尔值true或false,表示维护窗口是否成功创建。

示例

请求 :

{
  "method": "createPatchManagementMaintenanceWindow",
  "id": "a7f1d11d-3c94-47f0-a599-b48d2fc44241",
  "jsonrpc": "2.0",
  "params": {
    "name": "QXPzQWvgtqtI4FlCRSU9z",
    "allowChangeByOtherUsers": true,
    "settings": {
      "downloadSettings": {
        "cachingServers": [],
        "fallbackOnDirectDownload": true
      },
      "installPatchesSettings": {
        "enabled": true,
        "ifMissedRunAsSoonAsPossible": true,
        "specificVendorAndProduct": {
          "type": 1,
          "enabled": false,
          "vendorProductsPairs": [
            {
              "os": 3,
              "vendor": {
                "id": "Oracle"
              },
              "products": [
                {
                  "id": "java-11-openjdk 11"
                },
                {
                  "id": "java-1.8.0-openjdk"
                }
              ]
            },
            {
              "vendor": {
                "id": "Inkscape"
              },
              "products": [
                {
                  "id": "0"
                }
              ]
            },
            {
              "vendor": {
                "id": "65"
              },
              "products": [
                {
                  "id": "15694"
                }
              ]
            }
          ]
        },
        "postponeReboot": {
          "option": 0
        },
        "updateType": {
          "nonSecurityPatchesSettings": {
            "enabled": true,
            "scheduler": {
              "recurrence": 3,
              "startDate": 1637258826,
              "between": {
                "startHour": 21,
                "startMinute": 0,
                "endHour": 23,
                "endMinute": 59
              },
              "weeklyRecurrence": {
                "every": 1,
                "days": [
                  1,
                  2,
                  3,
                  4,
                  5,
                  6,
                  0
                ]
              }
            }
          },
          "securityPatchesSettings": {
            "enabled": true,
            "scheduler": {
              "recurrence": 1
            },
            "manuallyApprovedPatchesSettings": {
              "enabled": true,
              "scheduler": {
                "recurrence": 1
              }
            }
          },
          "manuallyApprovedPatchIds": [
            "{00016C6E-0000-0000-0000-000000000000}",
            "{0001354A-0000-0000-0000-000000000000}"
          ]
        }
      },
      "scanPatchesSettings": {
        "enabled": true,
        "useSameSchedule": false,
        "useFallbackSchedule": true,
        "runOnSystemChanges": true,
        "scheduler": {
          "recurrence": 3,
          "startDate": 1637258826,
          "between": {
            "startHour": 21,
            "startMinute": 0,
            "endHour": 23,
            "endMinute": 59
          },
          "weeklyRecurrence": {
            "every": 1,
            "days": [
              1,
              2,
              3,
              4,
              5,
              6,
              0
            ]
          }
        }
      }
    },"companyId": "6196964afb457113d33fb25e"
  }
}
 

响应 :

{
   "id" : "a7f1d11d-3c94-47f0-a599-b48d2fc44241",
   "jsonrpc" : "2.0",
   "result" : {
      "data" : [
         "61969696af703331ad53a948"
      ],
      "success" : true
   }
}