

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Criar modelos para pacotes de conformidade personalizados para o AWS Config
<a name="custom-conformance-pack"></a>

Um pacote de conformidade é uma coleção exclusiva de regras e ações de correção do AWS Config que podem ser facilmente implantadas juntas em uma única conta e em uma região da AWS, ou em uma organização no AWS Organizations.

Para criar um pacote de conformidade personalizado, siga as etapas na seção **Personalização do modelo** a seguir para criar um arquivo YAML que contenha a lista de [Regras gerenciadas do AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_use-managed-rules.html) ou [Regras personalizadas do AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_develop-rules.html) com as quais você deseja trabalhar.

**Topics**
+ [Terminologia](#custom-conformance-pack-terminology)
+ [Personalizar o modelo](#create-yaml-file.title)

## Terminologia
<a name="custom-conformance-pack-terminology"></a>

As *Regras gerenciadas pelo AWS Config* são regras predefinidas de propriedade do AWS Config.

*Regras personalizadas do AWS Config* são regras que você cria do zero.

Há duas maneiras de criar regras personalizadas do AWS Config: com funções do Lambda ([Guia do desenvolvedor do AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-concepts.html#gettingstarted-concepts-function)) e com o ([Repositório do GitHub do Guard](https://github.com/aws-cloudformation/cloudformation-guard)), uma linguagem de política como código. As regras do AWS Config personalizadas criadas com o AWS Lambda são chamadas de *Regras Lambda Personalizadas do AWS Config* e as regras personalizadas do AWS Config criadas com o Guard são chamadas *Regras de Política Personalizadas do AWS Config*.

## Personalizar o modelo
<a name="create-yaml-file.title"></a>

 **Criar seu arquivo YAML** 

Para criar um arquivo YAML, abra um editor de texto e salve o arquivo como *.yaml*. 

**nota**  
Seu arquivo conterá uma seção de **Parâmetros** e **Recursos**.

**Parâmetros**

A seção `Parameters` em seu arquivo YAML é para os parâmetros de regra do conjunto de regras do AWS Config que você adicionará posteriormente na seção `Resources`. Crie a seção `Parameters` copiando e colando o seguinte bloco de código em seu arquivo YAML, personalizando-o conforme necessário e repetindo para cada parâmetro de regra.

```
Parameters:    
    NameOfRuleParamNameOfRuleParameter: 
        Default: Parameter value
        Type: Type    
    ...
```

Por exemplo:

```
Parameters:
    IamPasswordPolicyParamMinimumPasswordLength:
        Default: '14'
        Type: String
```

**nota**  
Ao selecionar as regras do AWS Config para criar seu pacote de conformidade personalizado, verifique se você tem os recursos provisionados em sua conta que serão avaliados de acordo com as regras do AWS Config.

1. *A primeira linha na seção de parâmetros depois de `Parameters:` é uma string concatenada de *NameOfRule* \$1 Param \$1 NameOfRuleParameter*.

   1. Substitua `NameOfRule` por um nome consistente criado por você para a regra. Por exemplo, pode ser **IamPasswordPolicy** para a regra **iam-password-policy**.

   1. Tipo: `Param`.

   1. Em seguida, substitua `NameOfRuleParameter` pelo nome do parâmetro da regra para sua regra específica. Para regras gerenciadas por AWS Config gerenciadas, o nome do parâmetro da regra está localizado na [Lista de regras gerenciadas do AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-aws-config.html) (por exemplo, **MinimumPasswordLength** é o nome de um parâmetro de regra para a regra **iam-password-policy**). Para regras do AWS Config personalizadas, o nome do parâmetro da regra é o nome que você escolheu ao criar a regra.

1. Se você estiver usando uma regra gerenciada do AWS Config, encontre a regra do AWS Config apropriada na lista de regras gerenciadas para saber os valores aceitos para `Default` e `Type` para sua regra específica. Para regras do AWS Config personalizadas, use os valores selecionados ao criar a regra.
**nota**  
Para cada parâmetro, `Type` deve ser especificado. O `Type` pode ser “String”, “int”, “double”, “CSV”, “boolean” e “StringMap”.

** Recursos**

A seção `Resources` lista as regras que estão sendo adicionadas ao seu pacote de conformidade personalizado. Adicione o bloco `Resources` a seguir diretamente abaixo de sua seção `Parameters`, personalizando-o, conforme necessário, e repetindo para cada regra. Para obter mais informações sobre as especificações, consulte [AWS::Config::ConfigRule](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#aws-resource-config-configrule-syntax).

```
Resources:
     NameOfRule:
        Properties:
            ConfigRuleName: ActualConfigRuleName  
            InputParameters:
                NameOfRuleParameter: !Ref NameOfRuleParamNameOfRuleParameter
            Source:
                Owner: Owner
                SourceIdentifier: SOURCE_IDENTIFIER
        Type: AWS::Config::ConfigRule
     ...
```

Por exemplo:

```
Resources:
    IamPasswordPolicy:
        Properties:
            ConfigRuleName: iam-password-policy
            InputParameters:
                MinimumPasswordLength: !Ref IamPasswordPolicyParamMinimumPasswordLength
            Source:
                Owner: AWS
                SourceIdentifier: IAM_PASSWORD_POLICY
        Type: AWS::Config::ConfigRule
```

**nota**  
Ao selecionar as regras do AWS Config regras para criar seu pacote de conformidade personalizado, verifique se você tem os recursos que serão avaliados para as regras do AWS Config provisionadas em sua conta. Para obter mais informações, consulte [Tipos de Recursos Compatíveis](https://docs.aws.amazon.com/config/latest/developerguide/resource-config-reference.html).

1. Substitua `NameOfRule` pelo mesmo nome que você criou na seção `Parameters`. 

1. Para Regras gerenciadas do AWS Config, substitua `ActualConfigRuleName` pelo título da página de regras apropriada na [Lista de regras gerenciadas do AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-aws-config.html). Para regras personalizadas do AWS Config, use o nome da regra do Config que você escolheu no momento da criação da regra. 

1. Substitua `NameOfRuleParameter` pelo mesmo nome que você usou na seção `Parameters`. Depois dos dois-pontos, copie e cole a mesma string concatenada de `!Ref` \$1 *NameOfRule* \$1 Param \$1 *NameOfRuleParameter* que você criou na seção `Parameters`.

1. Altere o `Owner` para o valor apropriado.
**nota**  
**Regras gerenciadas do AWS Config**  
Para regras gerenciadas do AWS Config, o valor de `Owner` será `AWS`.  
**Regras personalizadas do AWS Config**  
Para regras personalizadas do AWS Config criadas com o Guard, o valor de `Owner` será `CUSTOM_POLICY`. Para regras personalizadas de AWS Config criadas com o Lambda, o valor de `Owner` será `CUSTOM_LAMBDA`.

1. Altere o `SOURCE_IDENTIFIER` para o valor apropriado.
**nota**  
**Regras gerenciadas do AWS Config**  
Para regras gerenciadas de AWS Config, copie o identificador seguindo o link da regra selecionada na [Lista de regras gerenciadas do AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-aws-config.html) (por exemplo, o identificador de origem para a **access-keys-rotated** é  **ACCESS\$1KEYS\$1ROTATED**).   
**Regras personalizadas do AWS Config**  
Para regras personalizadas do AWS Config com o Lambda, o `SourceIdentifier` é o nome do recurso da Amazon (ARN) da função do AWS Lambda da regra, como  `arn:aws:lambda:us-east-2:123456789012:function:ActualConfigRuleName`. Para regras personalizadas do AWS Config criadas com o Guard, esse campo não é necessário.

Ao todo, seu pacote de conformidade personalizado preenchido deve começar a ter uma aparência semelhante ao seguinte, que é um exemplo do uso dessas regras gerenciadas do AWS Config gerenciadas: **iam-password-policy**, **access-keys-rotated** e **iam-user-unused-credentials-check**.

```
Parameters:
    IamPasswordPolicyParamMinimumPasswordLength:
        Default: '14'
        Type: String
    AccessKeysRotatedParamMaxAccessKeyAge:
        Default: '90'
        Type: String
    IamUserUnusedCredentialsCheckParamMaxCredentialUsageAge:
        Default: '45'
        Type: String
Resources:
    IamPasswordPolicy:
        Properties:
            ConfigRuleName: iam-password-policy
            InputParameters:
                MinimumPasswordLength: !Ref IamPasswordPolicyParamMinimumPasswordLength
            Source:
                Owner: AWS
                SourceIdentifier: IAM_PASSWORD_POLICY
        Type: AWS::Config::ConfigRule    
    AccessKeysRotated:
        Properties:
            ConfigRuleName: access-keys-rotated
            InputParameters:
                maxAccessKeyAge: !Ref AccessKeysRotatedParamMaxAccessKeyAge
            Source:
                Owner: AWS
                SourceIdentifier: ACCESS_KEYS_ROTATED
        Type: AWS::Config::ConfigRule
    IamUserUnusedCredentialsCheck:
        Properties:
            ConfigRuleName: iam-user-unused-credentials-check
            InputParameters:
                maxCredentialUsageAge: !Ref IamUserUnusedCredentialsCheckParamMaxCredentialUsageAge
            Source:
                Owner: AWS
                SourceIdentifier: IAM_USER_UNUSED_CREDENTIALS_CHECK
        Type: AWS::Config::ConfigRule
```