Como resolver erros de limitação ao usar a consulta avançada do AWS Config?

3 minuto de leitura
0

Como resolver erros de limitação ao usar a consulta avançada do AWS Config usando recursos agregados ou recursos de conta?

Resolução

Use as soluções alternativas a seguir de acordo com o seu caso.

Observação: Para usar a consulta avançada, é necessário ter as permissões das APIs SelectResourceConfig e SelectAggregateResourceConfig. Para mais informações, consulte Como executar consultas usando o editor SQL (console).

Versões dos sistemas operacionais das instâncias do Amazon EC2

A consulta avançada não consegue obter a lista de todos os sistemas operacionais em execução nas instâncias do Amazon Elastic Compute Cloud (Amazon EC2) em todas as regiões da AWS. Para verificar o sistema operacional, consulte Como encontrar a plataforma ou a versão do sistema operacional que minha instância do EC2 está usando?.

Consulta de recursos excluídos

Você não pode usar a consulta avançada com recursos excluídos. Para pesquisar recursos excluídos, consulte Como pesquisar recursos descobertos pelo AWS Config.

Consultas do Amazon S3

A consulta avançada não consegue obter os resultados dos buckets do Amazon Simple Storage Service (Amazon S3) se o acesso público estiver bloqueado. Isso ocorre porque o tipo de recurso AWS::S3::AccountPublicAccessBlock do AWS Config só retorna resultados se o Bloqueio de Acesso Público do Amazon S3 estiver ativado no nível da conta. Você pode usar uma consulta SQL para retornar o nome e os atributos de um bucket do S3 usando uma consulta semelhante à seguinte:

SELECT
  resourceId,
  resourceType,
  configuration,
  supplementaryConfiguration
WHERE
  resourceType = 'AWS::S3::Bucket'

Valores nulos em SQL

A consulta avançada não oferece suporte a valores nulos em SQL. Você deve incluir valores de forma explícita.

Você pode recuperar uma lista de instâncias do Amazon EC2 com endereço IP público associado usando o operador SQL BETWEEN de forma semelhante à seguinte:

SELECT
  accountId,
  resourceId,
  configuration.publicDnsName,
  configuration.publicIpAddress
WHERE
  resourceType = 'AWS::EC2::Instance'
  AND (
    configuration.publicIpAddress BETWEEN '0.0.0.0'
    AND '255.255.255.255'
    OR configuration.ipv6Addresses BETWEEN '0:0:0:0:0:0:0:0'
    AND 'ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff'
  )

Consultas de matrizes aninhadas

A consulta avançada não oferece suporte a consultas de matrizes aninhadas. Para mais informações, leia Limitações.

1.    Como solução alternativa, é possível usar uma consulta personalizada semelhante à seguinte:

SELECT
  configuration.targetResourceId,
  configuration.targetResourceType,
  configuration.complianceType,
  configuration.configRuleList
WHERE
  configuration.complianceType = 'NON_COMPLIANT'
  AND configuration.configRuleList.configRuleName = 'required-tags'

2.    Siga as instruções para exportar a saída em formato JSON.

Em seguida, use o jq, um processador JSON de linha de comando, para filtrar e consultar a matriz aninhada. Para saber mais e baixar o jq, consulte Formato de saída JSON.


Informações relacionadas

O AWS Config lança capacidade de salvar consultas avançadas

Consultas ao estado atual das configurações dos recursos da AWS

AWS OFICIAL
AWS OFICIALAtualizada há 3 anos