Más información sobre la creación de imágenes de contenedor seguras para OCI Functions
En este manual de soluciones, compartimos las mejores prácticas para crear imágenes de forma segura para el registro de Docker.
Arquitectura
Los archivos Dockerfile predeterminados se crean a partir de una imagen base (fnproject/python:3.9-dev) y podrían faltar las últimas versiones de paquetes dependientes.
Estas son algunas de las razones por las que las exploraciones de imágenes de contenedor son importantes y se deben corregir si se detecta alguna vulnerabilidad:
- Detección temprana: la exploración de imágenes durante la fase de compilación ayuda a identificar vulnerabilidades antes de que se puedan desplegar en producción.
- Rentabilidad de costos: solucionar las vulnerabilidades con antelación es menos costoso que corregirlas después del despliegue.
- Reduce la superficie de ataque: las imágenes de contenedor se componen de varias capas, cada una de las cuales podría contener vulnerabilidades. El escaneo ayuda a identificar y abordar estas vulnerabilidades.
- Mejora la estrategia de seguridad: el uso de imágenes base mínimas y bien mantenidas de orígenes de confianza puede ayudar a mejorar la estrategia de seguridad.
En el siguiente diagrama se ilustra el flujo de trabajo de esta arquitectura de referencia mediante un archivo Dockerfile por defecto.
build-container-image-oci-functions-default-docker.zip
En el siguiente diagrama se ilustra el flujo de trabajo de esta arquitectura de referencia mediante un archivo Dockerfile personalizado.
build-container-image-oci-functions-custom-docker.zip
Esta arquitectura admite los siguientes componentes:
- Región
Una región de Oracle Cloud Infrastructure es un área geográfica localizada que contiene uno o más centros de datos, denominados dominios de disponibilidad. Las regiones son independientes entre sí y puede haber grandes distancias que las separen (entre países e incluso continentes).
- Tenancy
Un arrendamiento es una partición segura y aislada que Oracle configura en Oracle Cloud al registrarse en Oracle Cloud Infrastructure. Puede crear, organizar y administrar sus recursos en Oracle Cloud dentro de su arrendamiento. Un arrendamiento es sinónimo de una compañía u organización. Normalmente, una compañía tendrá un único arrendamiento y reflejará su estructura organizativa dentro de ese arrendamiento. Un único arrendamiento suele estar asociado a una única suscripción, y una única suscripción normalmente solo tiene un arrendamiento.
- Registro
Oracle Cloud Infrastructure Registry es un registro gestionado por Oracle que permite simplificar el desarrollo y el flujo de trabajo de producción. El registro facilita el almacenamiento, el uso compartido y la gestión de artefactos de desarrollo, como imágenes de Docker. La arquitectura altamente disponible y escalable de Oracle Cloud Infrastructure garantiza que pueda desplegar y gestionar sus aplicaciones de forma fiable.
- Funciones
Oracle Cloud Infrastructure Functions es una plataforma de funciones como servicio (FaaS) totalmente gestionada, multi-inquilino, altamente escalable y bajo demanda. Se basa en el motor de origen abierto Fn Project. Las funciones le permiten desplegar el código y llamarlo directamente o dispararlo en respuesta a eventos. Oracle Functions utiliza contenedores de Docker alojados en Oracle Cloud Infrastructure Registry.
- Flujo
Oracle Cloud Infrastructure Streaming proporciona una solución de almacenamiento duradero, escalable y totalmente gestionada para la ingesta de flujos de datos continuos y de alto volumen que puede consumir y procesar en tiempo real. Puede utilizar Streaming para ingerir datos de gran volumen, como logs de aplicación, telemetría operativa, datos de flujo de clics en la web o para otros casos de uso en los que se producen y procesan datos de forma continua y secuencial en un modelo de mensajería de suscripción.
- Servicio Análisis de vulnerabilidades
El servicio Oracle Cloud Infrastructure Vulnerability Scanning ayuda a mejorar la estrategia de seguridad en Oracle Cloud comprobando de forma rutinaria las posibles vulnerabilidades de los puertos y hosts. El servicio genera informes con métricas y detalles sobre estas vulnerabilidades.