Configuración y operación seguras del ADDF - AWS Guía prescriptiva

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Configuración y operación seguras del ADDF

El Marco de datos de conducción autónoma (ADDF) debe tratarse como un software personalizado que requiere mantenimiento y cuidado continuos por parte de un equipo dedicado DevOps y de seguridad de su organización. En esta sección, se describen las tareas comunes relacionadas con la seguridad que lo ayudan a configurar y utilizar el ADDF durante todo su ciclo de vida.

Esta sección incluye las siguientes tareas:

Definición de la arquitectura del ADDF

Una instancia de ADDF es tan segura como el Cuenta de AWS entorno en el que se implementa. Este Cuenta de AWS entorno debe diseñarse para satisfacer las necesidades operativas y de seguridad de su caso de uso específico. Por ejemplo, las tareas y consideraciones relacionadas con la seguridad y las operaciones para configurar una instancia de ADDF en un entorno proof-of-concept (PoC) son diferentes a las de configurar un ADDF en un entorno de producción.

Ejecución del ADDF en un entorno de PoC

Si piensa utilizar ADDF en un entorno PoC, le recomendamos que cree un ADDF específico que no contenga ninguna otra Cuenta de AWS carga de trabajo. Esto ayuda a mantener su cuenta segura mientras explora el ADDF y sus características. Los siguientes son beneficios de este enfoque: 

  • En caso de un error de configuración del ADDF grave, ninguna otra carga de trabajo se vería afectada de forma adversa.

  • No hay riesgo de que se produzca ningún otro error de configuración de la carga de trabajo que pueda afectar de forma negativa a la configuración del ADDF.

Incluso en el caso de un entorno de PoC, le recomendamos que siga la mayor cantidad posible de prácticas recomendadas que se indican en Ejecución del ADDF en un entorno de producción.

Ejecución del ADDF en un entorno de producción

Si tiene la intención de utilizar el ADDF en un entorno de producción empresarial, le recomendamos encarecidamente que tenga en cuenta las prácticas recomendadas de seguridad de su organización e implemente el ADDF en consecuencia. Además de las prácticas recomendadas de seguridad de su organización, le recomendamos que implemente lo siguiente:

  • Cree un DevOps equipo de ADDF comprometido y a largo plazo: ADDF debe tratarse como un software personalizado. Requiere un mantenimiento y cuidado continuos por parte de un equipo dedicado DevOps. Antes de empezar a ejecutar el ADDF en un entorno de producción, se debe definir un DevOps equipo con el tamaño y las capacidades suficientes, con un compromiso total end-of-life de recursos, hasta que se implemente el ADDF.

  • Utilice una arquitectura de varias cuentas: cada instancia del ADDF debe implementarse en su propio entorno de varias cuentas de AWS dedicado, sin otras carga de trabajo no relacionadas. Como se define en la gestión y separación de AWS cuentas (AWS Well-Architected Framework), se considera una buena práctica separar los recursos y las cargas de trabajo en Cuentas de AWS varios, según los requisitos de la organización. Esto se debe a que a Cuenta de AWS actúa como un límite de aislamiento. Un diseño adecuado de la arquitectura de varias cuentas de AWS permite categorizar la carga de trabajo y reduce el alcance del impacto en caso de una brecha de seguridad, en comparación con una arquitectura de una sola cuenta. El uso de una arquitectura de varias cuentas también ayuda a que sus cuentas permanezcan dentro de sus Cuotas del Servicio de AWS. Distribuya sus módulos ADDF entre tantos módulos Cuentas de AWS como sea necesario para cumplir con los separation-of-duties requisitos y la seguridad de su organización.

  • Implemente varias instancias del ADDF: configure tantas instancias del ADDF independientes como necesite para desarrollar, probar e implementar de forma correcta los módulos del ADDF de acuerdo con los procesos de desarrollo de software de su organización. Al configurar varias instancias del ADDF, puede utilizar uno de los siguientes enfoques:

    • Varias instancias de ADDF en diferentes entornos de AWS varias cuentas: puede utilizarlas por separado Cuentas de AWS para aislar distintas instancias de ADDF. Por ejemplo, si su organización cuenta con etapas específicas de desarrollo, pruebas y producción, puede crear instancias del ADDF independientes y cuentas dedicadas para cada etapa. Esto ofrece muchas ventajas, como reducir el riesgo de que cualquier error se propague entre las etapas, ayudarlo a implementar un proceso de aprobación y restringir el acceso de los usuarios solo a determinados entornos. En la siguiente imagen, se muestran dos instancias del ADDF implementadas en entornos independientes de varias cuentas.

      Dos instancias de ADDF en AWS entornos separados que tienen arquitecturas de cuentas múltiples
    • Varias instancias de ADDF en el mismo entorno de AWS varias cuentas: puede crear varias instancias de ADDF que compartan el mismo entorno de varias cuentas. AWS Esto crea de manera efectiva ramas aisladas en las mismas Cuentas de AWS. Por ejemplo, si diferentes desarrolladores trabajan en paralelo, un desarrollador puede crear una instancia del ADDF dedicada en las mismas Cuentas de AWS. Esto ayuda a los desarrolladores a trabajar en ramas aisladas con fines de desarrollo y pruebas. Si utiliza este enfoque, para cada instancia del ADDF, sus recursos del ADDF deben tener nombres de recursos únicos. De forma predeterminada, esto se admite en los módulos del ADDF suministrados previamente. Puede utilizar este enfoque siempre que no exceda las Cuotas del Servicio de AWS. En la siguiente imagen, se muestran dos instancias del ADDF implementadas en un entorno compartido de varias cuentas.

      Dos instancias del ADDF implementadas en el mismo entorno de varias cuentas de AWS .
    • Varias instancias del ADDF en el mismo entorno de una sola cuenta de AWS : esta arquitectura es muy similar a la del ejemplo anterior. La diferencia es que las varias instancias del ADDF se implementan en un entorno de una sola cuenta en lugar de en un entorno de varias cuentas. Esta arquitectura puede adaptarse a casos de uso del ADDF muy simples que tienen un alcance limitado y a varios desarrolladores que trabajan en diferentes ramas a la vez.

      Dos instancias del ADDF implementadas en el mismo entorno de una sola cuenta de AWS .

    Como SeedFarmer es la única herramienta que controla las implementaciones de una instancia ADDF, puede crear cualquier entorno y arquitectura de cuentas que se adapte a la estrategia de implementación y a los procesos de CI/CD de su organización.

  • Personalice el proceso de AWS Cloud Development Kit (AWS CDK) arranque de acuerdo con los requisitos de seguridad de su organización: de forma predeterminada, AWS CDK asigna la política AdministratorAccess AWS administrada durante el proceso de arranque. Esta política concede privilegios administrativos completos. Si esta política es demasiado permisiva para los requisitos de seguridad de su organización, puede personalizar las políticas que se aplican. Para obtener más información, consulte Política personalizada de privilegios mínimos para la función de despliegue AWS CDK.

  • Siga las mejores prácticas al configurar el acceso en IAM: establezca una solución de acceso estructurada AWS Identity and Access Management (IAM) que permita a sus usuarios acceder al ADDF. Cuentas de AWS El marco del ADDF se ha diseñado para cumplir con el principio de privilegio mínimo. Su patrón de acceso a IAM también debe seguir el principio de privilegio mínimo, debe cumplir con los requisitos de su organización y debe cumplir con las Prácticas recomendadas de seguridad en IAM (documentación de IAM).

  • Configure las redes de acuerdo con las prácticas recomendadas de su organización: el ADDF incluye una pila de AWS CloudFormation de redes opcional que crea una nube privada virtual (VPC) pública o privada básica. Según la configuración de su organización, esta VPC podría exponer los recursos directamente a Internet. Le recomendamos que siga las prácticas recomendadas de redes de su organización y cree un módulo de red personalizado con seguridad reforzada.

  • Implemente medidas de prevención, detección y mitigación de la seguridad a Cuenta de AWS nivel: AWS ofrece varios servicios de seguridad, como Amazon GuardDuty AWS Security Hub, Amazon Detective y AWS Config. Habilite esos servicios en su ADDF Cuenta de AWS e integre los procesos de prevención, detección, mitigación y gestión de incidentes de seguridad de su organización. Le recomendamos que siga las Prácticas recomendadas de seguridad, identidad y conformidad (Centro de arquitectura de AWS ) y cualquier sugerencia específica de un servicio incluida en la documentación de ese servicio. Para obtener más información, consulte Documentación de seguridad de AWS.

El ADDF no aborda ninguno de estos temas porque los detalles de implementación y configuración dependen en gran medida de los requisitos y procesos específicos de su organización. Por el contrario, es responsabilidad fundamental de su organización abordar estos temas. Por lo general, el equipo que administra su Zona de aterrizaje de AWS lo ayuda a planificar e implementar su entorno del ADDF.

Configuración inicial de

Configure el ADDF de acuerdo con la Guía de implementación del ADDF (). GitHub El punto de partida de cualquier implementación es la /manifest carpeta del repositorio de autonomous-driving-data-frameworkGit Hub. La carpeta /manifest/example-dev contiene un ejemplo de implementación con fines de demostración. Utilice este ejemplo como punto de partida para diseñar su propia implementación. En ese directorio, hay un archivo de manifiesto de la implementación del ADDF denominado deployment.yaml. Contiene toda la información necesaria SeedFarmer para gestionar, implementar o eliminar ADDF y sus recursos en el Nube de AWS. Puede crear grupos de módulos de ADDF en archivos dedicados. El archivo core-modules.yaml es un ejemplo del grupo de módulos principales e incluye todos los módulos principales que proporciona el ADDF. Para resumir, el archivo deployment.yaml contiene todas las referencias a los grupos y módulos que se implementarán en sus cuentas de destino y especifica el orden de implementación.

Para una configuración segura y compatible, en especial en un entorno que no es una prueba de concepto, le recomendamos que analice el código fuente de cada módulo que desee implementar. De acuerdo con las prácticas recomendadas de refuerzo de la seguridad, solo debe implementar los módulos que sean necesarios para su caso de uso previsto.

nota

Los módulos del ADDF en la carpeta modules/demo-only/ no cuentan con seguridad reforzada y no se deberían implementar en entornos de producción ni en ningún entorno con datos confidenciales o protegidos. Estos módulos se incluyen para mostrar las capacidades del sistema y puede utilizarlos como base para crear sus propios módulos personalizados y con seguridad reforzada.

Personalización del código de marco de implementación del ADDF

El marco de implementación del ADDF y su lógica de orquestación e implementación se pueden personalizar por completo para cumplir con cualquier requisito. Sin embargo, le sugerimos que se abstenga de personalizar estas funciones o minimice los cambios por los siguientes motivos:

  • Mantenga la compatibilidad con las versiones anteriores: la compatibilidad con las versiones anteriores facilita la actualización del ADDF para incorporar las últimas características y actualizaciones de seguridad. Al cambiar el marco SeedFarmer, se rompe la retrocompatibilidad nativa con los módulos principales de CodeSeeder ADDF y con todos los módulos principales de ADDF.

  • Consecuencias de seguridad: cambiar el marco de implementación del ADDF es una tarea compleja que puede tener consecuencias de seguridad no deseadas. En el peor de los casos, los cambios en el marco pueden generar vulnerabilidades de seguridad.

Cuando sea posible, cree y personalice su propio código de módulo en lugar de modificar el marco de implementación del ADDF y el código del módulo principal del ADDF.

nota

Si considera que hay partes específicas del marco de implementación del ADDF que se deben mejorar o se debe reforzar aún más la seguridad, cuéntenos los cambios que realizaría en el repositorio del ADDF mediante una solicitud de cambios. Para obtener más información, consulte Contribuciones y revisiones de seguridad de código abierto.

Escritura de módulos personalizados en el ADDF

Crear un módulo de ADDF nuevo o ampliar un módulo existente es un concepto fundamental del ADDF. Al crear o personalizar módulos, le sugerimos que siga las prácticas recomendadas de seguridad de AWS generales y las prácticas recomendadas de su organización para una codificación segura. Además, le recomendamos que realice revisiones técnicas de seguridad internas o externas iniciales y periódicas, en función de los requisitos de seguridad de su organización, para reducir aún más el riesgo de problemas de seguridad.

Implementaciones del ADDF recurrentes

Implemente ADDF y sus módulos como se describe en la Guía de implementación de ADDF (). GitHub Para admitir las implementaciones recurrentes de ADDF que añaden, actualizan o eliminan recursos en sus cuentas de destino, SeedFarmer utilice MD5 hashes, almacenados en el almacén de parámetros de su cadena de herramientas y en las cuentas de destino, para comparar la infraestructura actualmente implementada con la infraestructura definida en los archivos de manifiesto de su base de código local.

Este enfoque sigue el GitOps paradigma, según el cual su repositorio fuente (la base de código local en la que opera SeedFarmer) es la fuente de la verdad y la infraestructura declarada explícitamente en él es el resultado deseado de su implementación. Para obtener más información GitOps, consulte Qué es GitOps (GitLab sitio web).

Auditorías de seguridad recurrentes

Al igual que cualquier otro software de su organización, integre el ADDF y el código del módulo del ADDF personalizado en su ciclo de auditoría de seguridad, administración de riesgos de seguridad y revisión de seguridad.

Actualizaciones del ADDF

El ADDF recibe actualizaciones periódicas como parte de su continuo desarrollo. Esto incluye actualizaciones de características, así como mejoras y correcciones relacionadas con la seguridad. Le recomendamos que compruebe de forma periódica si hay nuevas versiones del marco y que implemente las actualizaciones de manera oportuna. Para obtener más información, consulte Pasos para actualizar el ADDF (documentación del ADDF).

Desactivación

Si el ADDF ya no es necesario, elimine el ADDF y todos los recursos relacionados de sus Cuentas de AWS. Cualquier infraestructura desactualizada o sin uso conlleva costos innecesarios y supone un riesgo potencial para la seguridad. Para obtener más información, consulte Pasos para destruir el ADDF (documentación del ADDF).