En savoir plus sur la création d'images de conteneur sécurisées pour OCI Functions
Dans ce guide de solutions, nous partageons les meilleures pratiques pour créer en toute sécurité des images pour le registre Docker.
Architecture
Les fichiers Dockerfiles par défaut sont créés à partir d'une image de base (fnproject/python :3.9-dev) et il se peut qu'il manque les dernières versions des packages dépendants.
Voici quelques raisons pour lesquelles les analyses d'image de conteneur sont importantes et doivent être corrigées si des vulnérabilités sont détectées :
- Détection précoce : l'analyse des images pendant la phase de build permet d'identifier les vulnérabilités avant leur déploiement en production.
- Rentabilité : la résolution anticipée des vulnérabilités est moins coûteuse que leur correction après le déploiement.
- Réduit la surface d'attaque : les images de conteneur sont composées de plusieurs couches, chacune pouvant contenir des vulnérabilités. L'analyse permet d'identifier et de corriger ces vulnérabilités.
- Améliore l'état de sécurité : l'utilisation d'images de base minimales et bien gérées provenant de sources fiables peut aider à améliorer l'état de sécurité.
Le diagramme suivant illustre le workflow de cette architecture de référence à l'aide d'un fichier Dockerfile par défaut.
build-container-image-oci-functions-default-docker.zip
Le diagramme suivant illustre le workflow de cette architecture de référence à l'aide d'un fichier Dockerfile personnalisé.
build-container-image-oci-functions-custom-docker.zip
Cette architecture prend en charge les composants suivants :
- Région
Une région Oracle Cloud Infrastructure est une zone géographique précise, incluant un ou plusieurs centres de données, appelés domaines de disponibilité. Les régions sont indépendantes les unes des autres et de grandes distances peuvent les séparer (entre pays, voire continents).
- Tenancy
Une location est une partition sécurisée et isolée configurée par Oracle dans Oracle Cloud lors de votre inscription à Oracle Cloud Infrastructure. Vous pouvez créer, organiser et administrer vos ressources dans Oracle Cloud au sein de votre location. Une location est synonyme d'entreprise ou d'organisation. En général, une entreprise dispose d'une seule location et reflète sa structure organisationnelle au sein de cette location. Une location unique est généralement associée à un seul abonnement, et un seul abonnement n'a généralement qu'une seule location.
- Registry
Oracle Cloud Infrastructure Registry est un registre géré par Oracle qui vous permet de simplifier votre workflow du développement jusqu'à la production. Le registre vous permet de stocker, de partager et de gérer facilement des artefacts de développement, tels que des images Docker. L'architecture hautement disponible et évolutive d'Oracle Cloud Infrastructure vous garantit un déploiement et une gestion fiables des applications.
- Fonctions
Oracle Cloud Infrastructure Functions est une plate-forme Functions-as-a-Service (FaaS) entièrement gérée, colocative, hautement évolutive, à la demande. Il est optimisé par le moteur open source du projet Fn. Les fonctions vous permettent de déployer votre code et de l'appeler directement ou de le déclencher en réponse à des événements. Oracle Functions utilise des conteneurs Docker hébergés dans Oracle Cloud Infrastructure Registry.
- Transmission en continu
Oracle Cloud Infrastructure Streaming constitue une solution de stockage évolutive et durable entièrement gérée permettant d'inclure des flux de données importants transmis en continu, que vous pouvez utiliser et traiter en temps réel. Vous pouvez utiliser Streaming pour l'inclusion de grands volumes de données telles que les journaux d'application, la télémétrie opérationnelle et les données de flux de clics Web, ou pour d'autres cas d'emploi dans lesquels des données sont produites et traitées de manière séquentielle suivant un modèle d'échange de messages de publication-abonnement.
- Vulnerability Scanning Service
Oracle Cloud Infrastructure Vulnerability Scanning Service permet d'améliorer l'état de la sécurité dans Oracle Cloud en examinant régulièrement les ports et les hôtes à la recherche de vulnérabilités potentielles. Le service génère des rapports avec des mesures et des détails concernant ces vulnérabilités.