Todos os produtos
Search
Central de documentação

Cloud Config:Write a compliance package template in a configuration file

Última atualização: Sep 24, 2026

O Cloud Config permite escrever modelos de pacotes de conformidade em arquivos de configuração. Defina, importe e exporte um modelo de pacote de conformidade que contenha as regras gerenciadas compatíveis com o Cloud Config ou crie regras de condição com base nas necessidades do seu negócio. Isso oferece uma ferramenta poderosa para você gerenciar a conformidade da sua empresa. Este tópico descreve a estrutura e os parâmetros de um modelo de pacote de conformidade para ajudar você a definir conjuntos de regras de conformidade de forma eficiente, de acordo com os requisitos do seu negócio.

Estrutura do modelo

O sistema exporta um modelo de pacote de conformidade em um arquivo JSON. O nome do arquivo corresponde ao nome do pacote de conformidade, e a extensão do arquivo é .json. Importe um modelo de pacote de conformidade em um arquivo .txt ou .json. O tamanho do arquivo não pode exceder 1 MB. O conteúdo do arquivo consiste em duas partes: compliancePackTemplate (opcional) e configRuleTemplates (obrigatório).

compliancePackTemplate

O compliancePackTemplate contém o nome, a descrição e o nível de risco do pacote de conformidade. Sintaxe no 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

Obrigatório

Descrição

compliancePackName

Não

O nome do pacote de conformidade. Recomendamos que você especifique um nome com base no cenário de conformidade. O nome de um pacote de conformidade é determinado pelas seguintes regras:

  • Se o nome do pacote de conformidade não for especificado em uma solicitação de API ou no arquivo de configuração, o pacote receberá por padrão o nome no formato Millisecond-level UNIX timestamp.json.

  • Se o nome do pacote de conformidade for especificado tanto na solicitação de API quanto no arquivo de configuração, o nome definido no arquivo de configuração terá precedência.

riskLevel

Não

O nível de risco do pacote de conformidade. Este parâmetro diferencia a importância dos diversos pacotes de conformidade. Valores válidos:

  • 1: risco baixo.

  • 2: risco médio.

  • 3: risco alto.

description

Não

A descrição do pacote de conformidade. Este parâmetro descreve os cenários de aplicação do pacote de conformidade.

scope

Não

O escopo de aplicação da regra.

Exemplo:

{
  "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

O configRuleTemplates contém as regras do pacote de conformidade. As regras são do tipo JSON ARRAY. Sintaxe:

[
    {
        "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

Obrigatório

Descrição

configRuleName

Sim

O nome da regra.

scope.complianceResourceTypes

Sim

Os tipos de recurso aos quais a regra se aplica. O valor pode ser uma matriz JSON.

description

Não

A descrição da regra.

source.owner

Sim

A origem da regra. Valores válidos:

  • ALIYUN: uma regra gerenciada compatível com o Cloud Config.

  • CUSTOM_CONFIGURATION: uma regra de condição definida pelo usuário. Os modelos de pacote de conformidade aceitam regras de condição personalizadas. Use o parâmetro conditions para definir condições de conformidade complexas em strings JSON de acordo com os requisitos do seu negócio.

source.identifier

Sim

O identificador da regra. O valor varia de acordo com a origem da regra:

  • Se a regra for uma regra de condição definida pelo usuário, defina o valor como acs-config-configuration.

  • Se a regra for uma regra gerenciada compatível com o Cloud Config, defina este parâmetro como o identificador da regra gerenciada. Exemplo: OSS-bucket-referer-limit. Para obter mais informações sobre todas as regras gerenciadas compatíveis com o Cloud Config, consulte Managed rule templates.

source.sourceDetails.messageType

Sim

O tipo de gatilho da regra. Valores válidos:

  • ConfigurationItemChangeNotification: a regra é acionada por alterações de configuração. O recurso relevante é verificado em relação à regra apenas quando as configurações do recurso são alteradas.

  • ScheduledNotification: a regra é acionada periodicamente. O recurso relevante é verificado em relação à regra de forma periódica. Caso defina este parâmetro como ScheduledNotification, especifique também o parâmetro maximumExecutionFrequency.

source.sourceDetails.maximumExecutionFrequency

Não

O intervalo em que a regra é acionada. Valores válidos:

  • One_Hour

  • Three_Hours

  • Six_Hours

  • Twelve_Hours

  • TwentyFour_Hours

Nota

Este parâmetro é obrigatório. Defina o parâmetro source.sourceDetails.messageType como ScheduledNotification.

source.conditions

Não

O conteúdo da regra de condição.

Nota

Este parâmetro é obrigatório. Defina o parâmetro source.identifier como acs-config-configuration.

inputParameters

Não

Os parâmetros de entrada da regra. Para obter informações sobre os parâmetros de entrada de uma regra gerenciada, clique em link correspondente em Managed rule templates e consulte a descrição do item Input parameter na seção Rule details. Todos os parâmetros de entrada são do tipo STRING.

scope

Não

O escopo de aplicação da regra.

riskLevel

Não

O nível de risco da regra. Valores válidos:

  • 1: risco alto.

  • 2: risco médio.

  • 3: risco baixo.

Exemplo:

{
  "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."
  }
}

Exemplo

{
  "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."
  }
}

Importe e exporte um modelo de pacote de conformidade

Importe um modelo de pacote de conformidade em um arquivo .json ou .txt para o Cloud Config. Você também pode exportar um modelo de pacote de conformidade em um arquivo .json. Em seguida, compartilhe e faça o backup do modelo exportado. Com isso, gerencie regras com flexibilidade e praticidade.