Utilizar la Infraestructura como Código (IaC) con agentes de seguridad automatizados de GuardDuty
Utilice esta sección únicamente si la siguiente lista se aplica a su caso de uso:
-
Utiliza herramientas de Infraestructura como Código (IaC), como AWS Cloud Development Kit (AWS CDK) y Terraform, para administrar los recursos de AWS, y
-
Necesita habilitar la configuración automatizada del agente de GuardDuty para uno o varios tipos de recursos: Amazon EKS, Amazon EC2 o Amazon ECS-Fargate.
Información general sobre el gráfico de dependencia de recursos de IaC
Cuando se habilita la configuración automatizada del agente de GuardDuty para un tipo de recurso, GuardDuty crea automáticamente un punto de conexión de VPC y un grupo de seguridad asociado a este punto de conexión de VPC, e instala el agente de seguridad para este tipo de recurso. De forma predeterminada, GuardDuty eliminará el punto de conexión de VPC y el grupo de seguridad asociado solo después de que desactive la Supervisión en tiempo de ejecución. Para obtener más información, consulte Desactivar, desinstalar y limpiar recursos en la Supervisión en tiempo de ejecución.
Cuando utiliza una herramienta de IaC, esta mantiene un gráfico de dependencia de los recursos. Cuando se eliminan recursos con la herramienta de IaC, únicamente se eliminan los recursos de los que se puede hacer un seguimiento como parte del gráfico de dependencia de recursos. Es posible que las herramientas de IaC no tengan conocimiento de los recursos que se crean fuera de su configuración especificada. Por ejemplo, crea una VPC con una herramienta de IaC y luego agrega un grupo de seguridad a esta VPC mediante la consola de AWS o una operación de la API. En el gráfico de dependencias de recursos, el recurso de la VPC que crea dependerá del grupo de seguridad asociado. Si elimina este recurso de la VPC con la herramienta de IaC, se producirá un error. La forma de evitar este error es eliminar manualmente el grupo de seguridad asociado o actualizar la configuración de IaC para incluir este recurso agregado.
Problema común: eliminar recursos en IaC
Al utilizar la configuración automatizada del agente de GuardDuty, es posible que desee eliminar un recurso (Amazon EKS, Amazon EC2 o Amazon ECS-Fargate) que haya creado mediante una herramienta de IaC. Sin embargo, este recurso depende de un punto de conexión de VPC que GuardDuty creó. Esto impide que la herramienta IaC elimine el recurso por sí misma y requiere que desactive la Supervisión en tiempo de ejecución, que además elimina el punto de conexión de VPC automáticamente.
Por ejemplo, cuando intenta eliminar el punto de conexión de VPC que GuardDuty creó en su nombre, se producirá un error similar al de los siguientes ejemplos.
Ejemplo de error al usar CDK
The following resource(s) failed to delete: [mycdkvpcapplicationpublicsubnet1Subnet1SubnetEXAMPLE1,mycdkvpcapplicationprivatesubnet1Subnet2SubnetEXAMPLE2]. Resource handler returned message: "The subnet 'subnet-APKAEIVFHP46CEXAMPLE' has dependencies and cannot be deleted. (Service: Ec2, Status Code: 400, Request ID:e071c3c5-7442-4489-838c-0dfc6EXAMPLE)" (RequestToken:4381cff8-6240-208a-8357-5557b7EXAMPLE, HandlerErrorCode: InvalidRequest)
Ejemplo de error al usar Terraform
module.vpc.aws_subnet.private[1]: Still destroying... [id=subnet-APKAEIVFHP46CEXAMPLE, 19m50s elapsed] module.vpc.aws_subnet.private[1]: Still destroying... [id=subnet-APKAEIVFHP46CEXAMPLE, 20m0s elapsed] Error: deleting EC2 Subnet (subnet-APKAEIBAERJR2EXAMPLE): DependencyViolation: The subnet 'subnet-APKAEIBAERJR2EXAMPLE' has dependencies and cannot be deleted. status code: 400, request id:e071c3c5-7442-4489-838c-0dfc6EXAMPLE
Solución: evite el problema de eliminación de recursos
Esta sección ayuda a administrar el punto de conexión de VPC y el grupo de seguridad independientemente de GuardDuty.
Para adquirir la propiedad completa de los recursos configurados mediante la herramienta de IaC, siga los siguientes pasos en el orden indicado:
-
Cree una VPC. Para autorizar el permiso de entrada, asocie un punto de conexión de VPC de GuardDuty con el grupo de seguridad, a esta VPC.
-
Habilitar la configuración automatizada del agente de GuardDuty para el tipo de recurso
Después de completar los pasos anteriores, GuardDuty no creará su propio punto de conexión de VPC y reutilizará el que usted creó mediante la herramienta de IaC.
Para obtener información sobre cómo crear una VPC propia, consulte Crear una VPC únicamente en las Puertas de enlace de tránsito de Amazon VPC. Para obtener información sobre cómo crear un punto de conexión de VPC, consulte la siguiente sección para el tipo de recurso:
-
Para Amazon EC2, consulte Requisito previo: crear manualmente el punto de conexión de Amazon VPC.
-
Para Amazon EKS, consulte Requisito previo: crear un punto de conexión de Amazon VPC.