¿Por qué no funciona mi regla de AWS Config?

4 minutos de lectura
0

Mi regla de AWS Config no funciona. ¿Cómo puedo solucionar el problema?

Resolución

Hay varios problemas que pueden provocar que las reglas administradas de AWS Config no funcionen, incluidos los permisos, el alcance de los recursos o los elementos de cambio de configuración. Para resolver las reglas de AWS Config que no funcionan, pruebe los siguientes pasos de solución de problemas.

Nota: Si recibe errores al ejecutar los comandos de la Interfaz de la línea de comandos de AWS (AWS CLI), asegúrese de utilizar la versión más reciente de AWS CLI.

Solución de problemas generales con las reglas de AWS Config

  1. Compruebe que el grabador de configuración registre todos los tipos de recursos que requiere la regla (por ejemplo, AWS::EC2::Instance).
  2. Abra la consola de AWS Config y, a continuación, seleccione Reglas en el panel de navegación. Si el campo Conformidad indica que No se registraron resultados o que No hay recursos dentro del ámbito, consulte el paso 8 de Setting up and activating an AWS managed rule.
  3. Si no se informa del tiempo de evaluación e indica Error en las evaluaciones, revise la llamada a la API PutEvaluations en AWS CloudTrail Logs para ver si hay errores detectados.
  4. Abra la consola de AWS CloudTrail y, a continuación, seleccione Historial de eventos en el panel de navegación. Para filtrar los registros, seleccione Origen del evento en el menú desplegable e introduzca config.amazonaws.com en el campo de búsqueda. Revise los resultados del registro filtrado para ver si hay errores de acceso denegado.
  5. Para ver las reglas de AWS Config de activación periódica, acceda al panel del Historial de eventos de la consola de CloudTrail para comprobar las API de servicio pertinentes del recurso.
  6. Revise los plazos específicos de configuración y cumplimiento de los recursos. Confirme que un elemento de configuración se haya generado para reflejar el cambio en las reglas de AWS Config con un desencadenador basado en cambios de configuración.
  7. Confirme que se cumplen los requisitos de permisos del rol de grabador. Estas credenciales se utilizan para describir la configuración de los recursos y el cumplimiento de la publicación mediante la API PutEvaluations.
  8. Ejecute el siguiente comando de AWS CLI. Sustituya ConfigRuleName por el nombre de su regla de AWS Config y reemplace RegionID por su región de AWS. En el resultado, revise el valor LastErrorMessage.
aws configservice describe-config-rule-evaluation-status --config-rule-names ConfigRuleName --region RegionID

Solución de problemas con reglas de AWS Config personalizadas

Para las reglas personalizadas de AWS Config, además de los pasos generales de solución de problemas anteriores, compruebe lo siguiente:

El mensaje de error «Unable to execute lambda function» indica que el servicio AWS Config no tiene permiso para invocar la función AWS Lambda. Para resolver este error, ejecute el siguiente comando para conceder los permisos necesarios. Sustituya function_name por el nombre de su función de Lambda, RegionID por su región de AWS y AWS-AccountID por su ID de cuenta de AWS:

aws lambda add-permission --function-name function_name --region RegionID --statement-id allow_config --action lambda:InvokeFunction --principal config.amazonaws.com --source-account AWS-accountID

A continuación se muestra un ejemplo de política de recursos de la función de Lambda:

{
    "Version": "2012-10-17",
    "Id": "default",
    "Statement": [
        {
            "Sid": "allow_config",
            "Effect": "Allow",
            "Principal": {
                "Service": "config.amazonaws.com"
            },
            "Action": "lambda:InvokeFunction",
            "Resource": "lambda-function-arn",
            "Condition": {
                "StringEquals": {
                    "AWS:SourceAccount": "AWS-accountID"
                }
            }
        }
    ]
}

Identifique el evento PutEvaluations que tiene un valor de Nombre de usuario que coincida con el nombre de la función de Lambda. Revise el mensaje de error para obtener más información.

  • Si el rol que utiliza la función de Lambda para ejecutar el código no está autorizada a ejecutar config:PutEvaluations, añada los permisos al rol especificado.
  • Si los permisos son correctos, revise el código de la función de Lambda para ver si hay excepciones. Para obtener más información, revise los registros del grupo de registros de Amazon CloudWatch (/aws/Lambda/FunctionName) asociado a la función de Lambda. Añada una instrucción de impresión en el código para generar más registros de depuración.

Información relacionada

Why can't I create or delete organization config rules?

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 3 años