

# AWS Config Exemplos do usando a AWS CLI
<a name="cli_config-service_code_examples"></a>

Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando o AWS Command Line Interface com o AWS Config.

*Ações* são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar perfis de serviço individuais, você pode ver as ações no contexto em seus cenários relacionados.

Cada exemplo inclui um link para o código-fonte completo, em que você pode encontrar instruções sobre como configurar e executar o código.

**Topics**
+ [Ações](#actions)

## Ações
<a name="actions"></a>

### `delete-config-rule`
<a name="config-service_DeleteConfigRule_cli_topic"></a>

O código de exemplo a seguir mostra como usar `delete-config-rule`.

**AWS CLI**  
**Para excluir uma regra do AWS Config**  
O seguinte comando exclui uma regra do AWS Config chamada `MyConfigRule`:  

```
aws configservice delete-config-rule --config-rule-name MyConfigRule
```
+  Consulte detalhes da API em [DeleteConfigRule](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/delete-config-rule.html) na *Referência de comandos da AWS CLI*. 

### `delete-delivery-channel`
<a name="config-service_DeleteDeliveryChannel_cli_topic"></a>

O código de exemplo a seguir mostra como usar `delete-delivery-channel`.

**AWS CLI**  
**Para excluir um canal de entrega**  
O comando a seguir exclui o canal de entrega padrão:  

```
aws configservice delete-delivery-channel --delivery-channel-name default
```
+  Para ver detalhes da API, consulte [DeleteDeliveryChannel](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/delete-delivery-channel.html) na *Referência de comandos da AWS CLI*. 

### `delete-evaluation-results`
<a name="config-service_DeleteEvaluationResults_cli_topic"></a>

O código de exemplo a seguir mostra como usar `delete-evaluation-results`.

**AWS CLI**  
**Para excluir manualmente os resultados da avaliação**  
O seguinte comando exclui os resultados da avaliação atual da regra gerenciada pela AWS s3-bucket-versioning-enabled:  

```
aws configservice delete-evaluation-results --config-rule-name s3-bucket-versioning-enabled
```
+  Para ver detalhes da API, consulte [DeleteEvaluationResults](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/delete-evaluation-results.html) na *Referência de comandos da AWS CLI*. 

### `deliver-config-snapshot`
<a name="config-service_DeliverConfigSnapshot_cli_topic"></a>

O código de exemplo a seguir mostra como usar `deliver-config-snapshot`.

**AWS CLI**  
**Para entregar um snapshot de configuração**  
O seguinte comando entrega um snapshot de configuração para o bucket do Amazon S3 que pertence ao canal de entrega padrão:  

```
aws configservice deliver-config-snapshot --delivery-channel-name default
```
Resultado:  

```
{
    "configSnapshotId": "d0333b00-a683-44af-921e-examplefb794"
}
```
+  Para ver detalhes da API, consulte [DeliverConfigSnapshot](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/deliver-config-snapshot.html) na *Referência de comandos da AWS CLI*. 

### `describe-compliance-by-config-rule`
<a name="config-service_DescribeComplianceByConfigRule_cli_topic"></a>

O código de exemplo a seguir mostra como usar `describe-compliance-by-config-rule`.

**AWS CLI**  
**Para obter informações de conformidade para suas regras do AWS Config**  
O comando a seguir retorna informações de conformidade para cada regra do AWS Config violada por um ou mais recursos: AWS  

```
aws configservice describe-compliance-by-config-rule --compliance-types NON_COMPLIANT
```
Na saída, o valor de cada atributo `CappedCount` indica quantos recursos não estão em conformidade com a regra relacionada. Por exemplo, a saída a seguir indica que três recursos não estão em conformidade com a regra chamada `InstanceTypesAreT2micro`.  
Resultado:  

```
{
    "ComplianceByConfigRules": [
        {
            "Compliance": {
                "ComplianceContributorCount": {
                    "CappedCount": 3,
                    "CapExceeded": false
                },
                "ComplianceType": "NON_COMPLIANT"
            },
            "ConfigRuleName": "InstanceTypesAreT2micro"
        },
        {
            "Compliance": {
                "ComplianceContributorCount": {
                    "CappedCount": 10,
                    "CapExceeded": false
                },
                "ComplianceType": "NON_COMPLIANT"
            },
            "ConfigRuleName": "RequiredTagsForVolumes"
        }
    ]
}
```
+  Para ver detalhes da API, consulte [DescribeComplianceByConfigRule](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/describe-compliance-by-config-rule.html) na *Referência de comandos da AWS CLI*. 

### `describe-compliance-by-resource`
<a name="config-service_DescribeComplianceByResource_cli_topic"></a>

O código de exemplo a seguir mostra como usar `describe-compliance-by-resource`.

**AWS CLI**  
**Para obter informações de conformidade para seus recursos da AWS**  
O comando a seguir retorna informações de conformidade para cada instância do EC2 gravada pelo AWS Config e que viole uma ou mais regras:  

```
aws configservice describe-compliance-by-resource --resource-type AWS::EC2::Instance --compliance-types NON_COMPLIANT
```
Na saída, o valor de cada atributo `CappedCount` indica quantas regras o recurso viola. Por exemplo, a saída a seguir indica que a instância `i-1a2b3c4d` viola duas regras.  
Resultado:  

```
{
    "ComplianceByResources": [
        {
            "ResourceType": "AWS::EC2::Instance",
            "ResourceId": "i-1a2b3c4d",
            "Compliance": {
                "ComplianceContributorCount": {
                    "CappedCount": 2,
                    "CapExceeded": false
                },
                "ComplianceType": "NON_COMPLIANT"
            }
        },
        {
            "ResourceType": "AWS::EC2::Instance",
            "ResourceId": "i-2a2b3c4d ",
            "Compliance": {
                "ComplianceContributorCount": {
                    "CappedCount": 3,
                    "CapExceeded": false
                },
                "ComplianceType": "NON_COMPLIANT"
            }
        }
    ]
}
```
+  Para ver detalhes da API, consulte [DescribeComplianceByResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/describe-compliance-by-resource.html) na *Referência de comandos da AWS CLI*. 

### `describe-config-rule-evaluation-status`
<a name="config-service_DescribeConfigRuleEvaluationStatus_cli_topic"></a>

O código de exemplo a seguir mostra como usar `describe-config-rule-evaluation-status`.

**AWS CLI**  
**Para obter informações de status de uma regra do AWS Config**  
O seguinte comando retorna as informações de status para uma regra do AWS Config chamada `MyConfigRule`:  

```
aws configservice describe-config-rule-evaluation-status --config-rule-names MyConfigRule
```
Resultado:  

```
{
    "ConfigRulesEvaluationStatus": [
        {
            "ConfigRuleArn": "arn:aws:config:us-east-1:123456789012:config-rule/config-rule-abcdef",
            "FirstActivatedTime": 1450311703.844,
            "ConfigRuleId": "config-rule-abcdef",
            "LastSuccessfulInvocationTime": 1450314643.156,
            "ConfigRuleName": "MyConfigRule"
        }
    ]
}
```
+  Para ver detalhes da API, consulte [DescribeConfigRuleEvaluationStatus](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/describe-config-rule-evaluation-status.html) na *Referência de comandos da AWS CLI*. 

### `describe-config-rules`
<a name="config-service_DescribeConfigRules_cli_topic"></a>

O código de exemplo a seguir mostra como usar `describe-config-rules`.

**AWS CLI**  
**Como obter detalhes de uma regra do AWS Config**  
O seguinte comando retorna detalhes de uma regra do AWS Config chamada `InstanceTypesAreT2micro`:  

```
aws configservice describe-config-rules --config-rule-names InstanceTypesAreT2micro
```
Resultado:  

```
{
    "ConfigRules": [
        {
            "ConfigRuleState": "ACTIVE",
            "Description": "Evaluates whether EC2 instances are the t2.micro type.",
            "ConfigRuleName": "InstanceTypesAreT2micro",
            "ConfigRuleArn": "arn:aws:config:us-east-1:123456789012:config-rule/config-rule-abcdef",
            "Source": {
                "Owner": "CUSTOM_LAMBDA",
                "SourceIdentifier": "arn:aws:lambda:us-east-1:123456789012:function:InstanceTypeCheck",
                "SourceDetails": [
                    {
                        "EventSource": "aws.config",
                        "MessageType": "ConfigurationItemChangeNotification"
                    }
                ]
            },
            "InputParameters": "{\"desiredInstanceType\":\"t2.micro\"}",
            "Scope": {
                "ComplianceResourceTypes": [
                    "AWS::EC2::Instance"
                ]
            },
            "ConfigRuleId": "config-rule-abcdef"
        }
    ]
}
```
+  Consulte detalhes da API em [DescribeConfigRules](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/describe-config-rules.html) na *Referência de comandos da AWS CLI*. 

### `describe-configuration-recorder-status`
<a name="config-service_DescribeConfigurationRecorderStatus_cli_topic"></a>

O código de exemplo a seguir mostra como usar `describe-configuration-recorder-status`.

**AWS CLI**  
**Para obter informações de status do gravador de configuração**  
O seguinte comando retorna o status do gravador de configuração padrão:  

```
aws configservice describe-configuration-recorder-status
```
Resultado:  

```
{
    "ConfigurationRecordersStatus": [
        {
            "name": "default",
            "lastStatus": "SUCCESS",
            "recording": true,
            "lastStatusChangeTime": 1452193834.344,
            "lastStartTime": 1441039997.819,
            "lastStopTime": 1441039992.835
        }
    ]
}
```
+  Para ver detalhes da API, consulte [DescribeConfigurationRecorderStatus](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/describe-configuration-recorder-status.html) na *Referência de comandos da AWS CLI*. 

### `describe-configuration-recorders`
<a name="config-service_DescribeConfigurationRecorders_cli_topic"></a>

O código de exemplo a seguir mostra como usar `describe-configuration-recorders`.

**AWS CLI**  
**Para obter detalhes sobre o gravador de configuração**  
O seguinte comando retorna detalhes sobre o gravador de configuração padrão:  

```
aws configservice describe-configuration-recorders
```
Resultado:  

```
{
    "ConfigurationRecorders": [
        {
            "recordingGroup": {
                "allSupported": true,
                "resourceTypes": [],
                "includeGlobalResourceTypes": true
            },
            "roleARN": "arn:aws:iam::123456789012:role/config-ConfigRole-A1B2C3D4E5F6",
            "name": "default"
        }
    ]
}
```
+  Para ver detalhes da API, consulte [DescribeConfigurationRecorders](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/describe-configuration-recorders.html) na *Referência de comandos da AWS CLI*. 

### `describe-delivery-channel-status`
<a name="config-service_DescribeDeliveryChannelStatus_cli_topic"></a>

O código de exemplo a seguir mostra como usar `describe-delivery-channel-status`.

**AWS CLI**  
**Para obter informações de status do canal de entrega**  
O seguinte comando retornará o status do canal de entrega:  

```
aws configservice describe-delivery-channel-status
```
Resultado:  

```
{
    "DeliveryChannelsStatus": [
        {
            "configStreamDeliveryInfo": {
                "lastStatusChangeTime": 1452193834.381,
                "lastStatus": "SUCCESS"
            },
            "configHistoryDeliveryInfo": {
                "lastSuccessfulTime": 1450317838.412,
                "lastStatus": "SUCCESS",
                "lastAttemptTime": 1450317838.412
            },
            "configSnapshotDeliveryInfo": {
                "lastSuccessfulTime": 1452185597.094,
                "lastStatus": "SUCCESS",
                "lastAttemptTime": 1452185597.094
            },
            "name": "default"
        }
    ]
}
```
+  Para ver detalhes da API, consulte [DescribeDeliveryChannelStatus](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/describe-delivery-channel-status.html) na *Referência de comandos da AWS CLI*. 

### `describe-delivery-channels`
<a name="config-service_DescribeDeliveryChannels_cli_topic"></a>

O código de exemplo a seguir mostra como usar `describe-delivery-channels`.

**AWS CLI**  
**Para obter detalhes sobre o canal de entrega**  
O seguinte comando retorna detalhes sobre o canal de entrega:  

```
aws configservice describe-delivery-channels
```
Resultado:  

```
{
    "DeliveryChannels": [
        {
            "snsTopicARN": "arn:aws:sns:us-east-1:123456789012:config-topic",
            "name": "default",
            "s3BucketName": "config-bucket-123456789012"
        }
    ]
}
```
+  Para ver detalhes da API, consulte [DescribeDeliveryChannels](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/describe-delivery-channels.html) na *Referência de comandos da AWS CLI*. 

### `get-compliance-details-by-config-rule`
<a name="config-service_GetComplianceDetailsByConfigRule_cli_topic"></a>

O código de exemplo a seguir mostra como usar `get-compliance-details-by-config-rule`.

**AWS CLI**  
**Para obter os resultados da avaliação de uma regra do AWS Config**  
O seguinte comando retorna os resultados da avaliação de todos os recursos que não estão em conformidade com uma regra do AWS Config chamada `InstanceTypesAreT2micro`:  

```
aws configservice get-compliance-details-by-config-rule --config-rule-name InstanceTypesAreT2micro --compliance-types NON_COMPLIANT
```
Resultado:  

```
{
    "EvaluationResults": [
        {
            "EvaluationResultIdentifier": {
                "OrderingTimestamp": 1450314635.065,
                "EvaluationResultQualifier": {
                    "ResourceType": "AWS::EC2::Instance",
                    "ResourceId": "i-1a2b3c4d",
                    "ConfigRuleName": "InstanceTypesAreT2micro"
                }
            },
            "ResultRecordedTime": 1450314645.261,
            "ConfigRuleInvokedTime": 1450314642.948,
            "ComplianceType": "NON_COMPLIANT"
        },
        {
            "EvaluationResultIdentifier": {
                "OrderingTimestamp": 1450314635.065,
                "EvaluationResultQualifier": {
                    "ResourceType": "AWS::EC2::Instance",
                    "ResourceId": "i-2a2b3c4d",
                    "ConfigRuleName": "InstanceTypesAreT2micro"
                }
            },
            "ResultRecordedTime": 1450314645.18,
            "ConfigRuleInvokedTime": 1450314642.902,
            "ComplianceType": "NON_COMPLIANT"
        },
        {
            "EvaluationResultIdentifier": {
                "OrderingTimestamp": 1450314635.065,
                "EvaluationResultQualifier": {
                    "ResourceType": "AWS::EC2::Instance",
                    "ResourceId": "i-3a2b3c4d",
                    "ConfigRuleName": "InstanceTypesAreT2micro"
                }
            },
            "ResultRecordedTime": 1450314643.346,
            "ConfigRuleInvokedTime": 1450314643.124,
            "ComplianceType": "NON_COMPLIANT"
        }
    ]
}
```
+  Para ver detalhes da API, consulte [GetComplianceDetailsByConfigRule](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/get-compliance-details-by-config-rule.html) na *Referência de comandos da AWS CLI*. 

### `get-compliance-details-by-resource`
<a name="config-service_GetComplianceDetailsByResource_cli_topic"></a>

O código de exemplo a seguir mostra como usar `get-compliance-details-by-resource`.

**AWS CLI**  
**Para obter os resultados da avaliação de um recurso da AWS**  
O comando a seguir retorna os resultados da avaliação de cada regra com a qual a instância do EC2 `i-1a2b3c4d` não está em conformidade:  

```
aws configservice get-compliance-details-by-resource --resource-type AWS::EC2::Instance --resource-id i-1a2b3c4d --compliance-types NON_COMPLIANT
```
Resultado:  

```
{
    "EvaluationResults": [
        {
            "EvaluationResultIdentifier": {
                "OrderingTimestamp": 1450314635.065,
                "EvaluationResultQualifier": {
                    "ResourceType": "AWS::EC2::Instance",
                    "ResourceId": "i-1a2b3c4d",
                    "ConfigRuleName": "InstanceTypesAreT2micro"
                }
            },
            "ResultRecordedTime": 1450314643.288,
            "ConfigRuleInvokedTime": 1450314643.034,
            "ComplianceType": "NON_COMPLIANT"
        },
        {
            "EvaluationResultIdentifier": {
                "OrderingTimestamp": 1450314635.065,
                "EvaluationResultQualifier": {
                    "ResourceType": "AWS::EC2::Instance",
                    "ResourceId": "i-1a2b3c4d",
                    "ConfigRuleName": "RequiredTagForEC2Instances"
                }
            },
            "ResultRecordedTime": 1450314645.261,
            "ConfigRuleInvokedTime": 1450314642.948,
            "ComplianceType": "NON_COMPLIANT"
        }
    ]
}
```
+  Para ver detalhes da API, consulte [GetComplianceDetailsByResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/get-compliance-details-by-resource.html) na *Referência de comandos da AWS CLI*. 

### `get-compliance-summary-by-config-rule`
<a name="config-service_GetComplianceSummaryByConfigRule_cli_topic"></a>

O código de exemplo a seguir mostra como usar `get-compliance-summary-by-config-rule`.

**AWS CLI**  
**Para obter o resumo de conformidade de suas regras do AWS Config**  
O seguinte comando retorna o número de regras que estão em conformidade e o número das que não estão:  

```
aws configservice get-compliance-summary-by-config-rule
```
Na saída, o valor de cada atributo `CappedCount` indica quantas regras estão em conformidade ou não.  
Resultado:  

```
{
    "ComplianceSummary": {
        "NonCompliantResourceCount": {
            "CappedCount": 3,
            "CapExceeded": false
        },
        "ComplianceSummaryTimestamp": 1452204131.493,
        "CompliantResourceCount": {
            "CappedCount": 2,
            "CapExceeded": false
        }
    }
}
```
+  Para ver detalhes da API, consulte [GetComplianceSummaryByConfigRule](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/get-compliance-summary-by-config-rule.html) na *Referência de comandos da AWS CLI*. 

### `get-compliance-summary-by-resource-type`
<a name="config-service_GetComplianceSummaryByResourceType_cli_topic"></a>

O código de exemplo a seguir mostra como usar `get-compliance-summary-by-resource-type`.

**AWS CLI**  
**Para obter o resumo de conformidade para todos os tipos de recursos**  
O seguinte comando retorna o número de recursos da AWS que não estão em conformidade e o número dos que estão:  

```
aws configservice get-compliance-summary-by-resource-type
```
Na saída, o valor de cada atributo `CappedCount` indica quantos recursos estão em conformidade ou não.  
Resultado:  

```
{
    "ComplianceSummariesByResourceType": [
        {
            "ComplianceSummary": {
                "NonCompliantResourceCount": {
                    "CappedCount": 16,
                    "CapExceeded": false
                },
                "ComplianceSummaryTimestamp": 1453237464.543,
                "CompliantResourceCount": {
                    "CappedCount": 10,
                    "CapExceeded": false
                }
            }
        }
    ]
}
```
**Para obter o resumo de conformidade para um tipo específico de recurso**  
O seguinte comando retorna o número de instâncias do EC2 que não estão em conformidade e o número das que estão:  

```
aws configservice get-compliance-summary-by-resource-type --resource-types AWS::EC2::Instance
```
Na saída, o valor de cada atributo `CappedCount` indica quantos recursos estão em conformidade ou não.  
Resultado:  

```
{
    "ComplianceSummariesByResourceType": [
        {
            "ResourceType": "AWS::EC2::Instance",
            "ComplianceSummary": {
                "NonCompliantResourceCount": {
                    "CappedCount": 3,
                    "CapExceeded": false
                },
                "ComplianceSummaryTimestamp": 1452204923.518,
                "CompliantResourceCount": {
                    "CappedCount": 7,
                    "CapExceeded": false
                }
            }
        }
    ]
}
```
+  Para ver detalhes da API, consulte [GetComplianceSummaryByResourceType](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/get-compliance-summary-by-resource-type.html) na *Referência de comandos da AWS CLI*. 

### `get-resource-config-history`
<a name="config-service_GetResourceConfigHistory_cli_topic"></a>

O código de exemplo a seguir mostra como usar `get-resource-config-history`.

**AWS CLI**  
**Para obter o histórico de configuração de um recurso da AWS**  
O comando a seguir retorna uma lista de itens de configuração para uma instância do EC2 com um ID de `i-1a2b3c4d`:  

```
aws configservice get-resource-config-history --resource-type AWS::EC2::Instance --resource-id i-1a2b3c4d
```
+  Para ver detalhes da API, consulte [GetResourceConfigHistory](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/get-resource-config-history.html) na *Referência de comandos da AWS CLI*. 

### `get-status`
<a name="config-service_GetStatus_cli_topic"></a>

O código de exemplo a seguir mostra como usar `get-status`.

**AWS CLI**  
**Para obter o status do AWS Config**  
O seguinte comando retornará o status do canal de entrega e do gravador de configuração:  

```
aws configservice get-status
```
Resultado:  

```
Configuration Recorders:

name: default
recorder: ON
last status: SUCCESS

Delivery Channels:

name: default
last stream delivery status: SUCCESS
last history delivery status: SUCCESS
last snapshot delivery status: SUCCESS
```
+  Para ver detalhes da API, consulte [GetStatus](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/get-status.html) na *Referência de comandos da AWS CLI*. 

### `list-discovered-resources`
<a name="config-service_ListDiscoveredResources_cli_topic"></a>

O código de exemplo a seguir mostra como usar `list-discovered-resources`.

**AWS CLI**  
**Para listar os recursos que o AWS Config descobriu**  
O comando a seguir lista as instâncias do EC2 que o AWS Config descobriu:  

```
aws configservice list-discovered-resources --resource-type AWS::EC2::Instance
```
Resultado:  

```
{
    "resourceIdentifiers": [
        {
            "resourceType": "AWS::EC2::Instance",
            "resourceId": "i-1a2b3c4d"
        },
        {
            "resourceType": "AWS::EC2::Instance",
            "resourceId": "i-2a2b3c4d"
        },
        {
            "resourceType": "AWS::EC2::Instance",
            "resourceId": "i-3a2b3c4d"
        }
    ]
}
```
+  Para ver detalhes da API, consulte [ListDiscoveredResources](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/list-discovered-resources.html) na *Referência de comandos da AWS CLI*. 

### `put-config-rule`
<a name="config-service_PutConfigRule_cli_topic"></a>

O código de exemplo a seguir mostra como usar `put-config-rule`.

**AWS CLI**  
**Como adicionar uma regra gerenciada do AWS Config**  
O seguinte comando fornece o código JSON para adicionar uma regra gerenciada do AWS Config:  

```
aws configservice put-config-rule --config-rule file://RequiredTagsForEC2Instances.json
```
`RequiredTagsForEC2Instances.json` é um arquivo JSON que contém a configuração da regra:  

```
{
  "ConfigRuleName": "RequiredTagsForEC2Instances",
  "Description": "Checks whether the CostCenter and Owner tags are applied to EC2 instances.",
  "Scope": {
    "ComplianceResourceTypes": [
      "AWS::EC2::Instance"
    ]
  },
  "Source": {
    "Owner": "AWS",
    "SourceIdentifier": "REQUIRED_TAGS"
  },
  "InputParameters": "{\"tag1Key\":\"CostCenter\",\"tag2Key\":\"Owner\"}"
}
```
Esse código JSON limita o escopo do atributo `ComplianceResourceTypes` aos recursos do tipo `AWS::EC2::Instance`. Desta forma, o AWS Config avaliará somente instâncias do EC2 em relação à regra. Como a regra é uma regra gerenciada, o atributo `Owner` é definido como `AWS` e o atributo `SourceIdentifier` é definido como o identificador da regra, `REQUIRED_TAGS`. Para o atributo `InputParameters`, as chaves de tag exigidas pela regra, `CostCenter` e `Owner` são especificados.  
Se o comando for bem-sucedido, o AWS Config não retornará nenhuma saída. Para verificar a configuração da regra, execute o comando describe-config-rules e especifique o nome da regra.  
**Como adicionar uma regra do Config gerenciada pelo cliente**  
O seguinte comando fornece o código JSON para adicionar uma regra do Config gerenciada pelo cliente:  

```
aws configservice put-config-rule --config-rule file://InstanceTypesAreT2micro.json
```
`InstanceTypesAreT2micro.json` é um arquivo JSON que contém a configuração da regra:  

```
{
  "ConfigRuleName": "InstanceTypesAreT2micro",
  "Description": "Evaluates whether EC2 instances are the t2.micro type.",
  "Scope": {
    "ComplianceResourceTypes": [
      "AWS::EC2::Instance"
    ]
  },
  "Source": {
    "Owner": "CUSTOM_LAMBDA",
    "SourceIdentifier": "arn:aws:lambda:us-east-1:123456789012:function:InstanceTypeCheck",
    "SourceDetails": [
      {
        "EventSource": "aws.config",
        "MessageType": "ConfigurationItemChangeNotification"
      }
    ]
  },
  "InputParameters": "{\"desiredInstanceType\":\"t2.micro\"}"
}
```
Esse código JSON limita o escopo do atributo `ComplianceResourceTypes` aos recursos do tipo `AWS::EC2::Instance`. Desta forma, o AWS Config avaliará somente instâncias do EC2 em relação à regra. Como essa é uma regra gerenciada pelo cliente, o atributo `Owner` é definido como `CUSTOM_LAMBDA` e o atributo `SourceIdentifier` é definido como o ARN da função do AWS Lambda. O `SourceDetails` objeto é obrigatório. Os parâmetros especificados para o atributo `InputParameters` são passados para a função do AWS Lambda quando o AWS Config o invoca para avaliar os recursos em relação à regra.  
Se o comando for bem-sucedido, o AWS Config não retornará nenhuma saída. Para verificar a configuração da regra, execute o comando describe-config-rules e especifique o nome da regra.  
+  Consulte detalhes da API em [PutConfigRule](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/put-config-rule.html) na *Referência de comandos da AWS CLI*. 

### `put-configuration-recorder`
<a name="config-service_PutConfigurationRecorder_cli_topic"></a>

O código de exemplo a seguir mostra como usar `put-configuration-recorder`.

**AWS CLI**  
**Exemplo 1: registrar todos os recursos com suporte**  
O comando a seguir cria um gravador de configuração que rastreia as alterações em todos os tipos de recursos compatíveis, incluindo os tipos de recursos globais:  

```
aws configservice put-configuration-recorder \
    --configuration-recorder name=default,roleARN=arn:aws:iam::123456789012:role/config-role \
    --recording-group allSupported=true,includeGlobalResourceTypes=true
```
Se o comando for bem-sucedido, o AWS Config não retornará nenhuma saída. Para verificar as configurações do seu gravador de configuração, execute o comando describe-configuration-recorders.  
**Exemplo 2: registrar tipos específicos de recursos**  
O comando a seguir cria um gravador de configuração que rastreia as alterações somente nos tipos de recursos especificados no arquivo JSON para a opção --recording-group:  

```
aws configservice put-configuration-recorder \
    --configuration-recorder name=default,roleARN=arn:aws:iam::123456789012:role/config-role \
    --recording-group file://recordingGroup.json
```
recordingGroup.json é um arquivo JSON que especifica os tipos de recursos que o AWS Config registrará:  

```
{
    "allSupported": false,
    "includeGlobalResourceTypes": false,
    "resourceTypes": [
        "AWS::EC2::EIP",
        "AWS::EC2::Instance",
        "AWS::EC2::NetworkAcl",
        "AWS::EC2::SecurityGroup",
        "AWS::CloudTrail::Trail",
        "AWS::EC2::Volume",
        "AWS::EC2::VPC",
        "AWS::IAM::User",
        "AWS::IAM::Policy"
    ]
}
```
Antes de poder especificar os tipos de recursos para a chave resourceTypes, você deve definir o allSupported e as opções includeGlobalResourceTypes para falso ou omiti-las.  
Se o comando for bem-sucedido, o AWS Config não retornará nenhuma saída. Para verificar as configurações do seu gravador de configuração, execute o comando describe-configuration-recorders.  
**Exemplo 3: selecionar todos os recursos com suporte, excluindo tipos específicos de recursos**  
O comando a seguir cria um gravador de configuração que rastreia as alterações em todos os tipos de recursos compatíveis atuais e futuros, excluindo os tipos de recursos especificados no arquivo JSON para a opção --recording-group:  

```
aws configservice put-configuration-recorder \
    --configuration-recorder name=default,roleARN=arn:aws:iam::123456789012:role/config-role \
    --recording-group file://recordingGroup.json
```
recordingGroup.json é um arquivo JSON que especifica os tipos de recursos que o AWS Config registrará:  

```
{
    "allSupported": false,
    "exclusionByResourceTypes": {
        "resourceTypes": [
        "AWS::Redshift::ClusterSnapshot",
        "AWS::RDS::DBClusterSnapshot",
        "AWS::CloudFront::StreamingDistribution"
    ]
    },
        "includeGlobalResourceTypes": false,
        "recordingStrategy": {
        "useOnly": "EXCLUSION_BY_RESOURCE_TYPES"
    },
}
```
Antes de especificar os tipos de recursos a serem excluídos da gravação: 1) Você deve definir as opções allSupported e includeGlobalResourceTypes como false ou omiti-las e 2) Definir o campo useOnly de RecordingStrategy como EXCLUSION\$1BY\$1RESOURCE\$1TYPES.  
Se o comando for bem-sucedido, o AWS Config não retornará nenhuma saída. Para verificar as configurações do seu gravador de configuração, execute o comando describe-configuration-recorders.  
+  Para ver detalhes da API, consulte [PutConfigurationRecorder](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/put-configuration-recorder.html) na *Referência de comandos da AWS CLI*. 

### `put-delivery-channel`
<a name="config-service_PutDeliveryChannel_cli_topic"></a>

O código de exemplo a seguir mostra como usar `put-delivery-channel`.

**AWS CLI**  
**Para criar um canal de entrega**  
O seguinte comando fornece as configurações do canal de entrega como código JSON:  

```
aws configservice put-delivery-channel --delivery-channel file://deliveryChannel.json
```
O arquivo `deliveryChannel.json` especifica os atributos do canal de entrega:  

```
{
    "name": "default",
    "s3BucketName": "config-bucket-123456789012",
    "snsTopicARN": "arn:aws:sns:us-east-1:123456789012:config-topic",
    "configSnapshotDeliveryProperties": {
        "deliveryFrequency": "Twelve_Hours"
    }
}
```
Este exemplo define os seguintes atributos:  
`name`: o nome do canal de entrega. Por padrão, o AWS Config atribui o nome `default` a um novo canal de entrega. Você não pode atualizar o nome do canal de entrega com o comando `put-delivery-channel`. Para ver as etapas para alterar o nome, consulte Como renomear o canal de entrega.`s3BucketName` - O nome do bucket do Amazon S3 para o qual o AWS Config entrega instantâneos de configuração e arquivos de histórico de configuração. Se você especificar um bucket que pertença a outra conta da AWS, esse bucket deverá ter políticas que concedam permissões de acesso ao AWS Config. Para obter mais informações, consulte Permissões para o bucket do Amazon S3.  
`snsTopicARN`: o nome do recurso da Amazon (ARN) do tópico do Amazon SNS para o qual o AWS Config envia notificações sobre alterações de configuração. Se você escolher um tópico de outra conta, o tópico deverá ter políticas que concedam permissões de acesso ao AWS Config. Para obter mais informações, consulte o tópico Permissões para o Amazon SNS.  
`configSnapshotDeliveryProperties`: contém o atributo `deliveryFrequency`, que define com que frequência o AWS Config fornece instantâneos de configuração e com que frequência ele invoca avaliações para regras periódicas do Config.  
Se o comando for bem-sucedido, o AWS Config não retornará nenhuma saída. Para verificar as configurações do seu canal de entrega, execute o comando describe-delivery-channels.  
+  Para ver detalhes da API, consulte [PutDeliveryChannel](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/put-delivery-channel.html) na *Referência de comandos da AWS CLI*. 

### `start-config-rules-evaluation`
<a name="config-service_StartConfigRulesEvaluation_cli_topic"></a>

O código de exemplo a seguir mostra como usar `start-config-rules-evaluation`.

**AWS CLI**  
**Para executar uma avaliação sob demanda das regras do AWS Config**  
O comando a seguir inicia uma avaliação para duas regras gerenciadas pela AWS:  

```
aws configservice start-config-rules-evaluation --config-rule-names s3-bucket-versioning-enabled cloudtrail-enabled
```
+  Para ver detalhes da API, consulte [StartConfigRulesEvaluation](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/start-config-rules-evaluation.html) na *Referência de comandos da AWS CLI*. 

### `start-configuration-recorder`
<a name="config-service_StartConfigurationRecorder_cli_topic"></a>

O código de exemplo a seguir mostra como usar `start-configuration-recorder`.

**AWS CLI**  
**Para iniciar o gravador de configuração**  
O comando a seguir inicia o gravador de configuração padrão:  

```
aws configservice start-configuration-recorder --configuration-recorder-name default
```
Se o comando for bem-sucedido, o AWS Config não retornará nenhuma saída. Para verificar se o AWS Config está gravando seus recursos, execute o comando get-status.  
+  Para ver detalhes da API, consulte [StartConfigurationRecorder](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/start-configuration-recorder.html) na *Referência de comandos da AWS CLI*. 

### `stop-configuration-recorder`
<a name="config-service_StopConfigurationRecorder_cli_topic"></a>

O código de exemplo a seguir mostra como usar `stop-configuration-recorder`.

**AWS CLI**  
**Para interromper o gravador de configuração**  
O comando a seguir interrompe o gravador de configuração padrão:  

```
aws configservice stop-configuration-recorder --configuration-recorder-name default
```
Se o comando for bem-sucedido, o AWS Config não retornará nenhuma saída. Para verificar se o AWS Config não está gravando seus recursos, execute o comando get-status.  
+  Para ver detalhes da API, consulte [StopConfigurationRecorder](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/stop-configuration-recorder.html) na *Referência de comandos da AWS CLI*. 

### `subscribe`
<a name="config-service_Subscribe_cli_topic"></a>

O código de exemplo a seguir mostra como usar `subscribe`.

**AWS CLI**  
**Para assinar o AWS Config**  
O comando a seguir cria o canal de entrega e o gravador de configuração padrão. O comando também especifica o bucket do Amazon S3 e o tópico do Amazon SNS para o qual o AWS Config fornecerá as informações de configuração:  

```
aws configservice subscribe --s3-bucket config-bucket-123456789012 --sns-topic arn:aws:sns:us-east-1:123456789012:config-topic --iam-role arn:aws:iam::123456789012:role/ConfigRole-A1B2C3D4E5F6
```
Resultado:  

```
Using existing S3 bucket: config-bucket-123456789012
Using existing SNS topic: arn:aws:sns:us-east-1:123456789012:config-topic
Subscribe succeeded:

Configuration Recorders: [
    {
        "recordingGroup": {
            "allSupported": true,
            "resourceTypes": [],
            "includeGlobalResourceTypes": false
        },
        "roleARN": "arn:aws:iam::123456789012:role/ConfigRole-A1B2C3D4E5F6",
        "name": "default"
    }
]

Delivery Channels: [
    {
        "snsTopicARN": "arn:aws:sns:us-east-1:123456789012:config-topic",
        "name": "default",
        "s3BucketName": "config-bucket-123456789012"
    }
]
```
+  Consulte detalhes da API em [Subscribe](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/configservice/subscribe.html) na *Referência de comandos da AWS CLI*. 