Descobertas de erros do IAM Access Analyzer - AWS Identity and Access Management

Descobertas de erros do IAM Access Analyzer

Quando o IAM Access Analyzer analisa recursos, ele normalmente gera descobertas que mostram quem tem acesso aos recursos. Porém, em alguns casos, o analisador pode encontrar problemas que o impedem de concluir a análise. Nessas situações, o IAM Access Analyzer gera descobertas de erros.

As descobertas de erros indicam que o IAM Access Analyzer não conseguiu concluir a análise de um recurso específico ou de um determinado par entidade principal-recurso. Essas descobertas ajudam a identificar os recursos que talvez requeiram atenção para garantir uma análise adequada.

Descobertas de erros de acesso externo

Analisadores de acesso externo, que identificam recursos compartilhados fora de sua conta ou organização, podem gerar dois tipos de descobertas de erros:

  • INTERNAL_ERROR: indica que o IAM Access Analyzer encontrou um problema interno ao analisar o recurso. Isso poderia ocorrer devido a limitações do serviço ou a problemas temporários.

    { "findingDetails": [ { "externalAccessDetails": {} } ], "resource": "arn:aws:iam::941407043048:role/TestAccessAnalyzer", "status": "ACTIVE", "error": "INTERNAL_ERROR", "createdAt": "2022-07-14T01:31:43.085000+00:00", "resourceType": "AWS::IAM::Role", "findingType": "ExternalAccess", "resourceOwnerAccount": "941407043048", "analyzedAt": "2025-03-19T06:51:46.109000+00:00", "id": "4b035c7d-b7d2-40e4-a6c3-9887d1a995df", "updatedAt": "2022-07-14T01:31:43.085000+00:00" }
  • ACCESS_DENIED: indica que o IAM Access Analyzer não tem as permissões necessárias para analisar o recurso. Isso geralmente acontece quando o acesso ao recurso é negado ao perfil vinculado ao serviço (SLR) do IAM Access Analyzer.

    { "findingDetails": [ { "externalAccessDetails": {} } ], "resource": "arn:aws:kms:us-west-2:941407043048:key/01cae123-b7f2-4488-9a05-0070a072ea2c", "status": "ACTIVE", "error": "ACCESS_DENIED", "createdAt": "2022-07-14T01:31:43.104000+00:00", "resourceType": "AWS::KMS::Key", "findingType": "ExternalAccess", "resourceOwnerAccount": "941407043048", "analyzedAt": "2025-03-19T06:51:46.090000+00:00", "id": "7ef6f04a-9d2c-4038-9cc0-2a5f00a4d8f8", "updatedAt": "2022-07-14T01:31:43.104000+00:00" }

Descobertas de erros de acesso interno

Analisadores de acesso interno, que identificam o acesso dentro de sua conta ou organização, podem gerar quatro tipos de descobertas de erros:

  • PRINCIPAL_LIMIT_EXCEEDED: gerado quando mais de 3.000 entidades principais têm acesso a um recurso essencial. Esse erro ajuda você a identificar recursos com acesso excessivamente amplo que talvez precise ser limitado.

    Se você fizer alterações no recurso ou nas entidades principais do ambiente que reduzam o número de entidades principais a menos que o limite, o analisador gerará as descobertas normais durante a próxima varredura e a descoberta de erro será marcada como resolvida.

    { "id": "efec28fe-b304-412f-af0f-704d0d70c79c", "status": "ACTIVE", "error": "PRINCIPAL_LIMIT_EXCEEDED", "resource": "arn:aws:s3:::critical-data", "resourceType": "AWS::S3::Bucket", "resourceOwnerAccount": "111122223333", "createdAt": "2023-11-30T00:56:56.437000+00:00", "analyzedAt": "2024-03-06T04:11:54.406000+00:00", "updatedAt": "2023-11-30T00:56:56.437000+00:00", "findingType": "InternalAccess", "findingDetails": [ { "internalAccessDetails": {} } ] }
  • Erros ao nível do recurso (INTERNAL_ERROR ou ACCESS_DENIED): similares aos erros de acesso externo, indicam que o analisador não conseguiu analisar um determinado recurso devido a problemas internos ou a problemas de permissão. Quando ocorre um erro ao nível do recurso, o analisador gera uma única descoberta de erro para o recurso em vez das descobertas normais.

    { "id": "efec28fe-b304-412f-af0f-704d0d70c79c", "status": "ACTIVE", "error": "INTERNAL_ERROR", // can be INTERNAL_ERROR or ACCESS_DENIED "resource": "arn:aws:s3:::critical-data", "resourceType": "AWS::S3::Bucket", "resourceOwnerAccount": "111122223333", "createdAt": "2023-11-30T00:56:56.437000+00:00", "analyzedAt": "2024-03-06T04:11:54.406000+00:00", "updatedAt": "2023-11-30T00:56:56.437000+00:00", "findingType": "InternalAccess", "findingDetails": [ { "internalAccessDetails": {} } ] }
  • Erros ao nível da entidade principal (INTERNAL_ERROR ou ACCESS_DENIED): indica que o analisador não conseguiu analisar acesso para um determinado recurso a uma determinada entidade principal. Ao contrário dos erros ao nível do recurso, um recurso pode ter descobertas normais para algumas entidades principais e descobertas de erros para outras entidades principais.

    { "id": "efec28fe-b304-412f-af0f-704d0d70c79c", "status": "ACTIVE", "error": "INTERNAL_ERROR", // can be INTERNAL_ERROR or ACCESS_DENIED "resource": "arn:aws:s3:::critical-data", "resourceType": "AWS::S3::Bucket", "resourceOwnerAccount": "111122223333", "createdAt": "2023-11-30T00:56:56.437000+00:00", "analyzedAt": "2024-03-06T04:11:54.406000+00:00", "updatedAt": "2023-11-30T00:56:56.437000+00:00", "findingType": "InternalAccess", "findingDetails": [ { "internalAccessDetails": { "principal": { "AWS": "arn:aws:iam::111122223333:role/MyRole_1" }, "principalOwnerAccount": "111122223333", "principalType": "IAM_ROLE", "accessType": "INTRA_ACCOUNT" } } ] }
  • PRINCIPAL_ERRORS_LIMIT_EXCEEDED: gerado quando há muitas descobertas de erros ao nível da entidade principal para um único recurso. Essa é uma descoberta de erro ao nível do recurso que pode aparecer junto com as descobertas normais para o mesmo recurso.

    { "id": "efec28fe-b304-412f-af0f-704d0d70c79c", "status": "ACTIVE", "error": "PRINCIPAL_ERRORS_LIMIT_EXCEEDED", "resource": "arn:aws:s3:::critical-data", "resourceType": "AWS::S3::Bucket", "resourceOwnerAccount": "111122223333", "createdAt": "2023-11-30T00:56:56.437000+00:00", "analyzedAt": "2024-03-06T04:11:54.406000+00:00", "updatedAt": "2023-11-30T00:56:56.437000+00:00", "findingType": "InternalAccess", "resourceControlPolicyRestriction": "NOT_APPLICABLE", "serviceControlPolicyRestriction": "NOT_APPLICABLE", "findingDetails": [ { "internalAccessDetails": {} } ] }

Resolver descobertas de erros

Se você resolver o problema que impedia o IAM Access Analyzer de analisar o recurso, a descoberta de erro será removida completamente em vez de ser alterada para uma descoberta resolvida.

Para resolver as descobertas de erros, considere as seguintes abordagens baseadas no tipo de erro:

  • Para erros de ACCESS_DENIED, verifique se o perfil vinculado ao serviço do IAM Access Analyzer tem as permissões necessárias para acessar o recurso.

  • Para erros de PRINCIPAL_LIMIT_EXCEEDED, revise as políticas de acesso do recurso e considere restringir o acesso a menos entidades principais.

  • Para descobertas de INTERNAL_ERROR, poderá ser necessário aguardar um ciclo de análise subsequente ou entrar em contato com o suporte da AWS se o problema persistir.

  • Para PRINCIPAL_ERRORS_LIMIT_EXCEEDED, revise e, se possível, simplifique os padrões de acesso para o recurso afetado.

Depois de fazer alterações para resolver os problemas subjacentes, o IAM Access Analyzer tentará analisar os recursos novamente durante o próximo ciclo de varredura.