Todos los productos
Search
Centro de documentos

Cloud Config:Escribir una plantilla de paquete de cumplimiento en un archivo de configuración

Última actualización: Sep 24, 2026

Cloud Config le permite escribir plantillas de paquetes de cumplimiento en archivos de configuración. Puede definir, importar y exportar una plantilla de paquete de cumplimiento que contenga las reglas administradas compatibles con Cloud Config o reglas de condición creadas según sus necesidades de negocio. Esto le proporciona una herramienta potente para gestionar el cumplimiento de su empresa. Este tema describe la estructura y los parámetros de una plantilla de paquete de cumplimiento para ayudarle a definir conjuntos de reglas de cumplimiento de manera eficiente según sus necesidades de negocio.

Estructura de la plantilla

Una plantilla de paquete de cumplimiento se exporta en un archivo JSON. El nombre del archivo corresponde al nombre del paquete de cumplimiento y la extensión es .json. Puede importar una plantilla de paquete de cumplimiento desde un archivo .txt o .json. El tamaño del archivo no puede superar 1 MB. El contenido del archivo consta de dos partes: compliancePackTemplate (opcional) y configRuleTemplates (obligatoria).

compliancePackTemplate

compliancePackTemplate contiene el nombre, la descripción y el nivel de riesgo del paquete de cumplimiento. Sintaxis en formato JSON:

{
  "riskLevel": 1,
  "compliancePackName": "The name of the compliance package",
  "description": "The description of the compliance package",
  "scope": {
    "complianceResourceTypes": [
      "The resource types to which the rule is applicable"
    ],
    "complianceResourceIds": [
      "The ID of the evaluated resource"
    ],
    "complianceExcludeResourceIds": [
      "The ID of the excluded resource"
    ],
    "complianceRegionIds": [
      "The ID of the evaluated region"
    ],
    "complianceExcludeRegionIds": [
      "The ID of the excluded region"
    ],
    "complianceResourceGroupIds": [
      "The ID of the evaluated resource group"
    ],
    "complianceExcludeResourceGroupIds": [
      "The ID of the excluded resource group"
    ],
    "complianceTagsScope": [
      {
        "tagKey": "The effective tag key",
        "tagValue": "The effective tag value"
      }
    ],
    "complianceExcludeTagsScope": [
      {
        "tagKey": "The excluded tag key",
        "tagValue": "The excluded tag value"
      }
    ]
  }
}

Parámetro

Obligatorio

Descripción

compliancePackName

No

Nombre del paquete de cumplimiento. Se recomienda especificar un nombre basado en el escenario de cumplimiento. El nombre de un paquete de cumplimiento se determina según a continuación reglas:

  • Si no se especifica el nombre del paquete de cumplimiento en una solicitud de API ni en el archivo de configuración, el paquete recibe de forma predeterminada el nombre con el formato Marca de tiempo UNIX en milisegundos.json.

  • Si el nombre del paquete de cumplimiento se especifica tanto en una solicitud de API como en el archivo de configuración, tiene prioridad el valor definido en el archivo de configuración.

riskLevel

No

Nivel de riesgo del paquete de cumplimiento. Este parámetro sirve para distinguir la importancia de los distintos paquetes de cumplimiento. Valores válidos:

  • 1: riesgo bajo.

  • 2: riesgo medio.

  • 3: riesgo alto.

description

No

Descripción del paquete de cumplimiento. Este parámetro indica los escenarios de aplicación del paquete de cumplimiento.

scope

No

Ámbito de aplicación de la regla.

Ejemplo:

{
  "configRuleTemplates": [],
  "compliancePackTemplate": {
    "riskLevel": 2,
    "compliancePackName": "Write a compliance package template in a configuration file",
    "scope": {
      "complianceResourceIds": [
        "i-t4n3u1pz97547xg****.i-t4n3u1pz97547xg0****.",
        "i-t4n1bxf3xr70wjh5****",
        "i-t4n133q6k9czgun****",
        "i-t4n3s3qqti2zaxu****"
      ],
      "complianceResourceGroupIds": [
        "rg-aek2yl36l*****"
      ],
      "complianceTagsScope": [
        {
          "tagKey": "config",
          "tagValue": "configTest"
        }
      ],
      "complianceRegionIds": [
        "ap-southeast-1"
      ]
    },
    "description": "Performs the import and export testing for writing a compliance package template in a configuration file."
  }
}

configRuleTemplates

configRuleTemplates contiene las reglas del paquete de cumplimiento. Las reglas son del tipo JSON ARRAY. Sintaxis:

[
    {
        "configRuleName": "The name of the rule",
        "riskLevel": 3,
        "scope": {
            "complianceResourceTypes": [
                "The resource types to which the rule is applicable"
    ],
    "complianceResourceIds": [
      "The ID of the evaluated resource"
    ],
    "complianceExcludeResourceIds": [
      "The ID of the excluded resource"
    ],
    "complianceRegionIds": [
      "The ID of the evaluated region"
    ],
    "complianceExcludeRegionIds": [
      "The ID of the excluded region"
    ],
    "complianceResourceGroupIds": [
      "The ID of the evaluated resource group"
    ],
    "complianceExcludeResourceGroupIds": [
      "The ID of the excluded resource group"
    ],
    "complianceTagsScope": [
      {
        "tagKey": "The effective tag key",
        "tagValue": "The effective tag value"
      }
    ],
    "complianceExcludeTagsScope": [
      {
        "tagKey": "The excluded tag key",
        "tagValue": "The excluded tag value"
        }
      ]
    },
    "description": "The description of the rule",
        "source": {
            "owner": "The source of the rule",
            "identifier": "The identifier of the rule",
            "sourceDetails": [
                {
                    "messageType": "The trigger type of the rule",
                    "maximumExecutionFrequency": "The interval at which the rule is triggered"
                },
                {
                    "messageType": "The trigger type of the rule"
                }
            ],
            "conditions": "The content of the condition rule"
        },
        "inputParameters": {
            "paramName1": "The value of the paramName1 parameter",
            "paramName2": "The value of the paramName2 parameter"
        }
    }
]

Parámetro

Obligatorio

Descripción

configRuleName

Sí

Nombre de la regla.

scope.complianceResourceTypes

Sí

Tipos de recursos a los que aplica la regla. El valor puede ser una matriz JSON.

description

No

Descripción de la regla.

source.owner

Sí

Origen de la regla. Valores válidos:

  • ALIYUN: regla administrada compatible con Cloud Config.

  • CUSTOM_CONFIGURATION: regla de condición definida por el usuario. Las plantillas de paquetes de cumplimiento admiten reglas de condición definidas por el usuario. Use el parámetro conditions para definir condiciones de cumplimiento complejas en cadenas JSON según sus necesidades de negocio.

source.identifier

Sí

Identificador de la regla. El valor varía según el origen de la regla:

  • Si la regla es una regla de condición definida por el usuario, establezca el valor en acs-config-configuration.

  • Si la regla es una regla administrada compatible con Cloud Config, establezca este parámetro con el identificador de dicha regla. Ejemplo: oss-bucket-referer-limit. Para obtener más información sobre todas las reglas administradas compatibles con Cloud Config, consulte Managed rule templates.

source.sourceDetails.messageType

Sí

Tipo de activación de la regla. Valores válidos:

  • ConfigurationItemChangeNotification: la regla se activa por cambios de configuración. El recurso correspondiente se evalúa contra la regla solo cuando cambia su configuración.

  • ScheduledNotification: la regla se activa de forma periódica. El recurso correspondiente se evalúa contra la regla de manera periódica. Si establece este parámetro en ScheduledNotification, también debe especificar el parámetro maximumExecutionFrequency.

source.sourceDetails.maximumExecutionFrequency

No

Intervalo en el que se activa la regla. Valores válidos:

  • One_Hour

  • Three_Hours

  • Six_Hours

  • Twelve_Hours

  • TwentyFour_Hours

Nota

Este parámetro es obligatorio si establece el parámetro source.sourceDetails.messageType en ScheduledNotification.

source.conditions

No

Contenido de la regla de condición.

Nota

Este parámetro es obligatorio si establece el parámetro source.identifier en acs-config-configuration.

inputParameters

No

Parámetros de entrada de la regla. Para consultar los parámetros de entrada de una regla administrada, haga clic en el enlace correspondiente en Managed rule templates y revise la descripción del elemento Input parameter en la sección Rule details. Todos los parámetros de entrada son del tipo STRING.

scope

No

Ámbito de aplicación de la regla.

riskLevel

No

Nivel de riesgo de la regla. Valores válidos:

  • 1: riesgo alto.

  • 2: riesgo medio.

  • 3: riesgo bajo.

Ejemplo:

{
  "configRuleTemplates": [
    {
      "configRuleName": "ecs-instance-deletion-protection-enabled",
      "riskLevel": 3,
      "scope": {
        "complianceResourceIds": [
          "i-t4n3u1pz97547xg0****.i-t4n3u1pz97547xg0****",
          "i-t4n1bxf3xr70wjh5****",
          "i-t4n133q6k9czgun****",
          "i-t4n3s3qqti2zaxu****"
        ],
        "complianceResourceGroupIds": [
          "rg-aek2yl36lg****"
        ],
        "complianceTagsScope": [
          {
            "tagKey": "config",
            "tagValue": "configTest"
          }
        ],
        "complianceRegionIds": [
          "ap-southea****"
        ],
        "complianceResourceTypes": [
          "ACS::ECS::Instance"
        ]
      },
      "description": "Checks whether the release protection feature is enabled for each Elastic Compute Service (ECS) instance. If so, the evaluation result is Compliant.",
      "source": {
        "owner": "ALIYUN",
        "identifier": "ecs-instance-deletion-protection-enabled",
        "sourceDetails": [
          {
            "messageType": "ConfigurationItemChangeNotification"
          }
        ]
      },
      "inputParameters": {}
    }
  ],
  "compliancePackTemplate": {
    "riskLevel": 2,
    "compliancePackName": "Write a compliance package template in a configuration file",
    "scope": {
      "complianceResourceIds": [
        "i-t4n3u1pz97547xg****.i-t4n3u1pz97547xg****",
        "i-t4n1bxf3xr70wjh5****",
        "i-t4n133q6k9czgunx****",
        "i-t4n3s3qqti2zaxux****"
      ],
      "complianceResourceGroupIds": [
        "rg-aek2yl36lgo****"
      ],
      "complianceTagsScope": [
        {
          "tagKey": "config",
          "tagValue": "configTest"
        }
      ],
      "complianceRegionIds": [
        "ap-southeast-1"
      ]
    },
    "description": "Performs the import and export testing for writing a compliance package template in a configuration file."
  }
}

Ejemplo

{
  "configRuleTemplates": [
    {
      "configRuleName": "ecs-instance-chargetype-check",
      "riskLevel": 3,
      "scope": {
        "complianceResourceIds": [
          "i-t4n3u1pz97547xg0****.i-t4n3u1pz97547xg*****",
          "i-t4n1bxf3xr70wjh5*****",
          "i-t4n133q6k9czgun*****",
          "i-t4n3s3qqti2zaxu*****"
        ],
        "complianceResourceGroupIds": [
          "rg-aek2yl36l*****"
        ],
        "complianceTagsScope": [
          {
            "tagKey": "config",
            "tagValue": "configTest"
          }
        ],
        "complianceRegionIds": [
          "ap-southeast-1"
        ],
        "complianceResourceTypes": [
          "ACS::ECS::Instance"
        ]
      },
      "description": "Checks whether the billing method of each ECS instance is subscription. If so, the evaluation result is Compliant.",
      "source": {
        "owner": "ALIYUN",
        "identifier": "ecs-instance-chargetype-check",
        "sourceDetails": [
          {
            "messageType": "ConfigurationItemChangeNotification"
          }
        ]
      },
      "inputParameters": {}
    },
    {
      "configRuleName": "ecs-public-access-check",
      "riskLevel": 3,
      "scope": {
        "complianceResourceIds": [
          "i-t4n3u1pz97547x*****.i-t4n3u1pz97547*****",
          "i-t4n1bxf3xr70w*****",
          "i-t4n133q6k9czg*****",
          "i-t4n3s3qqti2zax******"
        ],
        "complianceResourceGroupIds": [
          "rg-aek2yl36l*****"
        ],
        "complianceTagsScope": [
          {
            "tagKey": "config",
            "tagValue": "configTest"
          }
        ],
        "complianceRegionIds": [
          "ap-southeast-1"
        ],
        "complianceResourceTypes": [
          "ACS::ECS::Instance"
        ]
      },
      "description": "Checks whether a public IPv4 address or an EIP is specified for each ECS instance. If not, the evaluation result is Compliant.",
      "source": {
        "owner": "ALIYUN",
        "identifier": "ecs-instance-no-public-ip",
        "sourceDetails": [
          {
            "messageType": "ConfigurationItemChangeNotification"
          }
        ]
      },
      "inputParameters": {}
    },
    {
      "configRuleName": "ecs-instance-deletion-protection-enabled",
      "riskLevel": 3,
      "scope": {
        "complianceResourceIds": [
          "i-t4n3u1pz9754*****.i-t4n3u1pz97547x*****",
          "i-t4n1bxf3xr70wj*****",
          "i-t4n133q6k9czgu*****",
          "i-t4n3s3qqti2zaxu*****"
        ],
        "complianceResourceGroupIds": [
          "rg-aek2yl36l****"
        ],
        "complianceTagsScope": [
          {
            "tagKey": "config",
            "tagValue": "configTest"
          }
        ],
        "complianceRegionIds": [
          "ap-southeast-1"
        ],
        "complianceResourceTypes": [
          "ACS::ECS::Instance"
        ]
      },
      "description": "Checks whether the release protection feature is enabled for each ECS instance. If so, the evaluation result is Compliant.",
      "source": {
        "owner": "ALIYUN",
        "identifier": "ecs-instance-deletion-protection-enabled",
        "sourceDetails": [
          {
            "messageType": "ConfigurationItemChangeNotification"
          }
        ]
      },
      "inputParameters": {}
    }
  ],
  "compliancePackTemplate": {
    "riskLevel": 2,
    "compliancePackName": "Write a compliance package template in a configuration file",
    "scope": {
      "complianceResourceIds": [
        "i-t4n3u1pz97547xg0*****.i-t4n3u1pz97547xg******",
        "i-t4n1bxf3xr70w******",
        "i-t4n133q6k9czgun*****",
        "i-t4n3s3qqti2zaxux*****"
      ],
      "complianceResourceGroupIds": [
        "rg-aek2yl36l******"
      ],
      "complianceTagsScope": [
        {
          "tagKey": "config",
          "tagValue": "configTest"
        }
      ],
      "complianceRegionIds": [
        "ap-southeast-1"
      ]
    },
    "description": "Performs the import and export testing for writing a compliance package template in a configuration file."
  }
}

Importar y exportar una plantilla de paquete de cumplimiento

Importe a Cloud Config una plantilla de paquete de cumplimiento desde un archivo .json o .txt. También puede exportar una plantilla de paquete de cumplimiento en un archivo .json. Después, comparta y respalde la plantilla exportada. Esto le ayuda a gestionar las reglas de forma flexible y cómoda.