Ao usar o AWS re:Post, você concorda com os AWS re:Post Termos de uso

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

3 minuto de leitura
0

Quero 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 de acordo com o seu caso com consulta avançada.

Observação: para usar a consulta avançada, é necessário ter as permissões das APIs SelectResourceConfig e SelectAggregateResourceConfig. Para obter mais informações, consulte Consulta usando o editor de consultas 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 que executam as 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 Linux do EC2 está usando?

Recursos excluídos

Você não pode usar a consulta avançada com recursos excluídos. Isso ocorre porque a consulta avançada só pode obter a configuração atual. 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 com 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 a:

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, consulte Limitações.

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

    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á um ano