Ahora que está en la nube, ¿cómo puede conseguir correctamente DevSecOps?
enero 12, 2021 / Unisys Corporation
¿Tiene poco tiempo? Conozca las conclusiones clave:
- La tecnología en la nube y DevSecOps han mejorado la innovación y la velocidad para las empresas.
- DevSecOps combina el desarrollo, la seguridad y las operaciones en un único departamento.
- Adoptar DevSecOps requiere replantearse los procesos, utilizar herramientas de automatización y contar con un equipo bien formado.
- El éxito de DevSecOps aumenta con líderes persuasivos, empleados capacitados y un especialista en automatización.
La tecnología en la nube lo ha cambiado todo, y eso es una buena noticia para las empresas y los clientes. La nube proporciona una mayor agilidad y velocidad de innovación en comparación con las soluciones locales.
El Manifiesto Ágil, un documento que describe los valores y principios acordados para el desarrollo ágil de software, promueve la gestión eficaz del flujo de software, reduciendo la carga de trabajo y mejorando el enfoque. Su metodología permite a las empresas lanzar rápidamente soluciones basadas en software en la nube, respondiendo a los comentarios de los clientes. Este enfoque ajustado promueve la velocidad de innovación, minimiza los residuos y motiva a los equipos a ofrecer resultados más rápidos.
La nube aporta una mayor velocidad de los datos, con un mayor volumen y variedad de computación y servicios. Estas tres tendencias son los impulsores del mercado para la adopción de DevSecOps.
Según Gartner (Via TechTarget), el 90 % de los proyectos de desarrollo de software afirmarán seguir las prácticas de DevSecOps para 2022. Además, el 25 % de los proyectos seguirán una metodología de DevOps desde la concepción hasta la producción ese mismo año. La implementación de DevSecOps ofrece a las empresas numerosas ventajas, como una mayor velocidad, seguridad y facilidad de funcionamiento del software. También reduce eficazmente los defectos de código y reduce los costes.
Tradicionalmente, las organizaciones contaban con equipos independientes de ingeniería de desarrollo, garantía de calidad (QA), seguridad y operaciones en la nube. El equipo de desarrollo pasaría el trabajo a los equipos de control de calidad y seguridad, que luego lo entregarían al equipo de operaciones en la nube. El trabajo de implementación tendría que volver al equipo de desarrollo si hubiera algún problema.
Ahora, los límites entre el desarrollo, la seguridad y las operaciones están desapareciendo. Las organizaciones los están fusionando en un único departamento llamado DevSecOps. Un año después de la adopción de DevSecOps por parte de Amazon, sus ingenieros implementaron código cada 11,7 segundos de media. Netflix utiliza DevSecOps para desplegar código miles de veces al día.
Adoptar DevSecOps requiere reorganizar equipos y procesos para una integración y entrega continuas. Estos son tres consejos para obtener el máximo valor de la nube y DevSecOps.
1.Desplazar hacia la izquierda
Es esencial resolver los problemas de seguridad lo antes posible en el ciclo de DevSecOps. Antes de desplegar el software en la nube, este debe pasar por varias etapas de validación: desarrollo, pruebas, preproducción, preparación y producción. El software debe realizar una comprobación de puerta de seguridad y preparación para el despliegue en cada etapa. Si falla alguna prueba, debe volver al principio. Esto puede costar un tiempo valioso.
Para minimizar el reprocesamiento y los retrasos, desplace la resolución de problemas a la izquierda (o al principio) del continuo de DevSecOps. Resolver tantos problemas como sea posible en la fase de desarrollo es esencial. Esto evita costar tiempo adicional más adelante en el proceso para encontrar y solucionar problemas.
Puede utilizar herramientas y automatización para facilitar esto. Por ejemplo, considere el uso de una herramienta de análisis de seguridad de código fuente que escanee el código fuente en busca de problemas de seguridad durante la implementación. Las herramientas y la automatización pueden ayudar a identificar problemas de seguridad para que pueda modificar inmediatamente su software para abordar las vulnerabilidades.
2. Adoptar una infraestructura inmutable
Adoptar una infraestructura inmutable o utilizar contenedores, funciones sin servidor y microservicios es otra práctica recomendada de DevSecOps. Estas tecnologías son inflexibles porque no deben cambiarse o parchearse arbitrariamente.
Si surgen nuevos problemas y se deben realizar cambios, se debe reiniciar el proceso de DevSecOps. Este cambio en la automatización y el proceso de DevSecOps presenta un cambio de paradigma significativo.
Esto puede parecer contraintuitivo porque los contenedores, los microservicios y la tecnología sin servidor tratan sobre flexibilidad y escalabilidad. Sin embargo, la inmutabilidad significa que no se puede parchear un contenedor, por ejemplo. Si hay un problema con un contenedor en producción, debe volver al nivel de código fuente, construir un nuevo contenedor y luego desplegarlo.
Evite el parcheado o la fijación espontánea de los contenedores. Omitir las comprobaciones y puertas relacionadas con DevSecOps necesarias puede causar problemas. Volver a la primera etapa garantiza que su software esté seguro y funcione como se requiere.
3. Enfoque en las personas
Las personas son el componente más crucial de DevSecOps. Pueden resolver problemas con procesos minimizados. Para garantizar el éxito, el equipo debe estar bien formado en todos los aspectos de DevSecOps y ser capaz de desempeñar múltiples funciones en desarrollo, seguridad y operaciones.
Gartner recomienda que todos los desarrolladores reciban formación sobre los fundamentos de la codificación segura, aunque no es necesario que sean expertos en seguridad. Es esencial garantizar que todo el mundo comprenda los procesos de DevSecOps de principio a fin, incluido el desarrollo de código y aplicaciones, la implementación en la nube, los servicios de depuración y la seguridad.
En el pasado, los desarrolladores, las operaciones y el personal de seguridad eran entidades separadas, pero ahora están integrados. Los líderes influyentes de DevSecOps pueden ayudar a explicar los beneficios empresariales del proceso, mientras que los especialistas en automatización son fundamentales para los sistemas automatizados.
DevSecOps es ahora esencial y seguirá siendo fundamental en el futuro, especialmente en la innovación basada en la nube. Las empresas que no pasan a la nube corren el riesgo de perder innovación, agilidad y ahorro de costes. Las empresas pueden aprovechar la nube para mejorar la eficiencia empresarial y la satisfacción del cliente siguiendo las mejores prácticas.