En savoir plus sur la création d'images de conteneur sécurisées pour OCI Functions

En tant que meilleure pratique en matière de sécurité, les clients utilisent des analyseurs de vulnérabilité pour analyser les images Container Registry, comme les patches de système d'exploitation critiques. Les scanners de vulnérabilités aident à identifier et à corriger les vulnérabilités dans les images de conteneur avant qu'elles ne puissent être exploitées, et aident à prévenir les failles de sécurité, les fuites de données et autres problèmes de sécurité. Lorsque vous créez ou déployez une fonction avec OCI Functions, une image Docker est créée et propagée vers un registre Docker. Les scanners de vulnérabilité analysent et signalent les vulnérabilités des images et signalent différents niveaux de risque.

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.

A propos de la création d'images de conteneur pour OCI Functions

La fonction de cette solution est conçue comme une image Docker et propagée vers un registre Docker spécifié. C'est donc l'image de conteneur qui doit être corrigée. Les images mises à jour incluent souvent de nouvelles fonctionnalités, des améliorations de performances et des optimisations. La mise à jour des images garantit la compatibilité avec les dernières bibliothèques et dépendances logicielles, et corrige également les vulnérabilités qui pourraient être exploitées par des acteurs malveillants pour obtenir un accès non autorisé aux données ou ressources sensibles. La mise à jour des images permet de rester conforme aux normes et réglementations du secteur.