La sécurité implémentée dans le PaaS IBM Bluemix

IBM Bluemix se veut une plateforme sûre et sécurisée pour les développeurs d'applications. Dans ce tutoriel, vous allez apprendre comment IBM a implémenté la sécurité sur sa PaaS.

Un espace de dialogue vous est proposé sur le forum pour recevoir vos avis. Commentez Donner une note à l'article (5)

Article lu   fois.

L'auteur

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

I. Introduction

Conçue selon les pratiques d'ingénierie sécurisée, la plateforme IBM® Bluemix® possède des contrôles de sécurité répartis dans des couches sur le réseau et dans l'infrastructure. Bluemix fournit un groupe de services de sécurité que les développeurs d'applications peuvent utiliser afin de sécuriser leurs applications mobiles et Web. La combinaison de ces éléments permet de faire de Bluemix une plateforme proposant des choix clairs pour le développement d'applications sécurisé.

Bluemix assure la sécurité en appliquant des règles respectant les meilleures pratiques d'IBM en matière de systèmes, de réseau et d'ingénierie sécurisée. Ces règles incluent des pratiques telles que l'analyse du code source, l'analyse dynamique, la modélisation des menaces et des tests de pénétration. Bluemix suit le processus IBM Product Security Incident Response Team (PSIRT) pour la gestion des incidents de sécurité. Pour plus d'informations, voir le site IBM Security Vulnerability Management (PSIRT).

Les environnements Bluemix public et dédié utilisent les services cloud d'infrastructure sous forme de services (IaaS) Bluemix® Infrastructure (SoftLayer) et profitent pleinement de l'architecture sécurisée. L'infrastructure sous forme de services Bluemix® Infrastructure (SoftLayer) fournit des niveaux de protection multiples qui se chevauchent pour vos applications et vos données. Pour l'environnement Bluemix local, vous êtes en charge de la sécurité physique et fournissez l'infrastructure en hébergeant l'environnement Bluemix local dans votre propre centre de données situé derrière le pare-feu de la société. De plus, Bluemix ajoute des fonctions de sécurité au niveau de la couche plateforme sous forme de services (PaaS) dans différentes catégories : plateforme, données et application.

II. Présentation de la sécurité intégrée dans le PaaS IBM Bluemix

II-A. Aperçu général de la sécurité de la plateforme Bluemix

Bluemix offre une sécurité fonctionnelle, d'infrastructure, opérationnelle et physique (via Bluemix® Infrastructure (SoftLayer)) pour la plateforme de base. Toutefois, l'environnement Bluemix local est unique, car le client fournit l'infrastructure et le centre de données, et est en charge de la sécurité physique.

L'environnement Bluemix sur Bluemix® Infrastructure (SoftLayer) est conforme aux normes IBM de sécurité en matière de technologie de l'information, qui satisfont et dépassent les valeurs standard de l'industrie. Ces normes incluent les éléments suivants : réseau, chiffrement de données et contrôle d'accès.

  • Listes de contrôle d'accès, droits et tests de pénétration.
  • Identification, authentification et autorisation.
  • Protection des informations et des données.
  • Intégrité et disponibilité des services.
  • Gestion des vulnérabilités et des correctifs.
  • Détection d'attaques systématiques et par déni de service.
  • Réponse aux incidents de sécurité.
Image non disponible
Figure 1. Présentation de la sécurité de la plateforme Bluemix

Avec l'environnement Bluemix local, vous hébergez Bluemix derrière le pare-feu de votre société et dans votre centre de données. Par conséquent, vous êtes responsable de certains aspects de la sécurité. L'image ci-dessous indique quelles sont les parties de la sécurité qui appartiennent au client et quelles sont celles qui sont gérées et mises à jour par IBM.

Image non disponible
Figure 2. Présentation de la sécurité de la plateforme Bluemix locale

IBM installe, surveille à distance et gère l'environnement Bluemix local dans votre centre de données par le biais d'un relais, une fonction de distribution incluse dans l'environnement Bluemix local. Le relais se connecte de façon sécurisée avec des certificats propres à chaque instance Bluemix locale. Pour plus d'informations sur l'environnement Bluemix local et le relais, voir Environnement Bluemix local.

II-B. Sécurité fonctionnelle

Bluemix dispose de plusieurs fonctions en matière de sécurité fonctionnelle, telles que l'authentification d'utilisateur, l'autorisation d'accès, les opérations critiques et de contrôle, et la protection de données.

Authentification

Les développeurs d'applications sont authentifiés auprès de Bluemix via l'identité Web IBM. Pour les environnements Bluemix dédié et local, l'authentification via LDAP est prise en charge par défaut. À la demande, l'authentification via l'identité Web IBM peut être configurée à la place pour Bluemix.

Autorisation

Bluemix utilise les mécanismes Cloud Foundry pour s'assurer que chaque développeur a accès uniquement aux applications et aux instances de service qu'il a créées. L'autorisation d'accès aux services Bluemix est basée sur OAuth. L'accès à l'ensemble des nœuds finaux internes de la plateforme Bluemix est restreint pour les utilisateurs externes.

Audit

Des journaux d'audit sont créés pour toutes les tentatives d'authentification, réussies ou non, des développeurs d'application. Des journaux d'audit sont également créés pour les accès privilégiés aux systèmes Linux qui hébergent les conteneurs où sont exécutées les applications Bluemix.

Protection des données

L'ensemble du trafic Bluemix passe par les produits IBM WebSphere® DataPower® SOA Appliances, qui offrent des fonctions de proxy inverse, de terminaison SSL et d'équilibrage de charge. Les méthodes HTTP suivantes sont autorisées.

  • DELETE
  • GET
  • HEAD
  • OPTIONS
  • POST
  • PUT
  • TRACE

Le délai d'attente d'inactivité HTTP est de deux minutes.

Les en-têtes suivants sont remplis par DataPower.

$wsis

true si la connexion côté client est sécurisée (HTTPS) ; false dans le cas contraire.

$wssc

Un des schémas de connexion client suivants : https, http, ws ou wss.

$wssn

Nom d'hôte envoyé par le client.

$wssp

Port du serveur sur lequel le client se connecte.

x-client-ip

Adresse IP du client.

x-forwarded-proto

Un des schémas de connexion client suivants : https, http, ws ou wss.

Pratiques de développement sécurisé

Pour les environnements Bluemix public et dédié, des analyses régulières permettant de détecter les vulnérabilités en matière de sécurité sont effectuées sur divers composants Bluemix avec IBM Security AppScan® Dynamic Analyzer. La modélisation des menaces et des tests de pénétration sont effectués pour détecter et traiter les vulnérabilités potentielles pour tous les types de déploiement Bluemix. De plus, les développeurs d'applications peuvent utiliser le service AppScan Dynamic Analyzer afin de sécuriser leurs applications Web qui sont déployées dans Bluemix.

II-C. Sécurité de l'infrastructure

Bluemix s'appuie sur Cloud Foundry et fournit une base robuste pour l'exécution de vos applications. Dans cette architecture, plusieurs composants gèrent la sécurité et l'isolement. De plus, la gestion des modifications ainsi que des procédures de sauvegarde et de restauration sont implémentées pour assurer l'intégrité et la disponibilité.

Séparation des environnements

Pour l'environnement Bluemix public, les environnements de développement et de production sont séparés afin d'améliorer la stabilité et la sécurité des applications.

Pare-feux

Des pare-feux sont en place pour restreindre l'accès au réseau Bluemix. Pour l'environnement Bluemix local, le pare-feu de votre société sépare le reste de votre réseau de votre instance Bluemix.

Protection contre les intrusions

Les environnements Bluemix public et dédié assurent la protection contre les intrusions pour détecter les menaces afin qu'elles puissent être traitées. Des règles de protection contre les intrusions sont activées dans les pare-feux.

Gestion sécurisée des conteneurs d'application

Chaque application Bluemix est isolée et s'exécute dans son propre conteneur, qui possède des limites de ressources spécifiques pour le processeur, la mémoire et le disque.

Renforcement de la sécurité du système d'exploitation

Les administrateurs IBM renforcent le système d'exploitation et le réseau régulièrement à l'aide d'outils tels qu'IBM Endpoint Manager.

II-D. Sécurité opérationnelle

Bluemix offre un environnement de sécurité opérationnelle robuste avec les contrôles suivants.

Analyse de vulnérabilité

Bluemix utilise Nessus, outil d'analyse de vulnérabilité de Tenable Network Security, pour détecter les anomalies liées au réseau et aux configurations hôtes.

Gestion des correctifs automatisés

Les administrateurs Bluemix garantissent que les correctifs des systèmes d'exploitation sont appliqués à une fréquence appropriée. Les correctifs automatisés sont activés avec IBM Endpoint Manager.

Analyse et consolidation des journaux d'audit

Bluemix utilise les outils IBM Security QRadar® pour consolider les journaux Linux afin de surveiller l'accès privilégié sur les systèmes Linux. Bluemix utilise également les outils SIEM (gestion des événements et des informations de sécurité) d'IBM QRadar pour surveiller les tentatives de connexion, réussies ou non, des développeurs d'applications.

Gestion de l'accès utilisateur

Dans Bluemix, les instructions de répartition des tâches sont suivies pour affecter des privilèges d'accès granulaire aux utilisateurs et pour assurer que les utilisateurs n'ont accès qu'aux éléments dont ils ont besoin pour accomplir leurs tâches selon le principe du moindre privilège. Dans les environnements Bluemix dédié et local, les administrateurs désignés peuvent gérer les rôles et les droits pour les utilisateurs Bluemix dans leur organisation, dans la console d'administration. Voir Gestion de Bluemix pour des détails.

II-E. Sécurité physique

Les environnements Bluemix public et dédié s'appuient sur la topologie "un réseau dans le réseau" de Bluemix® Infrastructure (SoftLayer) en matière de sécurité de réseau physique. Cette architecture permet de s'assurer que les systèmes sont accessibles uniquement au personnel autorisé. Pour l'environnement Bluemix local, vous êtes en charge de la sécurité physique de l'instance locale. Votre centre de données est sécurisé derrière le pare-feu de votre société.

Dans la topologie "un réseau dans le réseau" de Bluemix® Infrastructure (SoftLayer), la couche réseau public gère le trafic public vers les sites Web hébergés ou les ressources en ligne. La couche réseau privé permet une véritable gestion externe par un opérateur tiers autonome via des passerelles de réseau privé virtuel SSL, PPTP ou IPSec. La couche réseau centre de données à centre de données, offre une connectivité gratuite et sécurisée entre les serveurs hébergés dans des installations Bluemix® Infrastructure (SoftLayer) distinctes.

Chaque centre de données Bluemix® Infrastructure (SoftLayer) est totalement sécurisé grâce à des contrôles qui répondent aux exigences standard de l'industrie et de la norme SSAE 16, sans exception.

III. Sécurité des données

III-A. Vue panoramique de la sécurité des données sous Bluemix

Avec Bluemix, la sécurisation des données contre l'accès non autorisé est le fruit d'une collaboration entre Bluemix et vous.

Les données qui sont associées à une application en cours d'exécution peuvent être dans l'un des trois états suivants : en transit, au repos et en cours d'utilisation.

Données en transit

Il s'agit des données transférées entre des nœuds sur un réseau.

Données au repos

Il s'agit des données qui sont stockées.

Données en cours d'utilisation

Il s'agit des données qui ne sont pas stockées et qui sont utilisées sur un nœud final.

Vous devez prendre en compte chaque type de données lorsque vous planifiez la sécurité des données.

La plateforme Bluemix sécurise les données transférées en sécurisant l'accès de l'utilisateur final à l'application via SSL sur le réseau, jusqu'à ce que les données atteignent IBM DataPower Gateway à la frontière du réseau interne de Bluemix. IBM DataPower Gateway sert de proxy inverse et fournit la terminaison SSL. IPSEC est utilisé pour sécuriser les données qui transitent entre IBM DataPower Gateway et l'application.

La sécurité des données utilisées et des données au repos vous incombe lorsque vous développez votre application. Vous pouvez tirer profit de plusieurs services liés aux données qui sont disponibles dans le catalogue Bluemix pour traiter ces questions.

III-B. Sécurité des applications Bluemix

En tant que développeur, vous devez activer la configuration des paramètres de sécurité, y compris la protection des données d'application, pour vos applications exécutées sur Bluemix.

Vous pouvez utiliser les fonctions de sécurité fournies par plusieurs services Bluemix pour sécuriser vos applications. Tous les services Bluemix qui sont produits par IBM suivent les pratiques de développement d'ingénierie sécurisée d'IBM.

Remarque : il se peut que certains services décrits ici ne soient pas applicables dans les instances Bluemix dédiées ou locales.

III-B-1. Service SSO

IBM Single Sign On for Bluemix est un service d'authentification reposant sur des règles et qui fournit une fonction de connexion unique facile à intégrer pour les applications Node.js ou Liberty for Java… Pour permettre à un développeur d'applications d'intégrer la fonction de connexion unique à une application, l'administrateur crée des instances de service et ajoute des sources d'identité.

Le service Single Sign On prend en charge plusieurs sources d'identité dans lesquelles vos données d'identification utilisateur sont stockées :

Entreprise SAML

Il s'agit d'un registre d'utilisateurs qui procède à un échange de jetons pour l'authentification.

Répertoire cloud

Il s'agit d'un registre d'utilisateurs qui est hébergé dans le cloud IBM.

Sources d'identité sociales

Il s'agit des registres d'utilisateurs qui sont gérés par Google, Facebook et LinkedIn.

Pour plus d'informations, voir Initiation à Single Sign On.

III-B-2. Application Security on Cloud

Ce service fournit une analyse de sécurité des applications mobiles et Web et vous permet d'analyser le code source afin d'identifier d'éventuelles vulnérabilités en matière de sécurité. Pour plus d'informations, voir Initiation à Application Security on Cloud.

III-B-3. Plug-in IBM UrbanCode pour le test de la sécurité des applications

Le plug-in IBM Application Security Testing for Bluemix vous permet d'exécuter des analyses de sécurité pour vos applications Web ou Android qui sont hébergées dans Bluemix. Il est développé par la communauté IBM UrbanCode. Deploy Community, qui assure son support.

Pour plus d'informations, voir IBM Application Security Testing for Bluemix.

III-B-4. dashDB

Le service dashDB utilise un serveur LDAP imbriqué pour l'authentification d'utilisateur. La connexion entre les applications et la base de données est protégée par des certificats SSL. Ce service utilise la capacité de chiffrement native de DB2® pour chiffrer automatiquement votre base de données déployée et vos sauvegardes de base de données. La rotation de clé principale automatique a lieu tous les 90 jours.

Pour plus d'informations, voir Initiation à dashDB.

III-B-5. Secure Gateway

Le service Secure Gateway permet de connecter les applications Bluemix de façon sécurisée à des emplacements distants, sur site ou dans le cloud. Il assure la connectivité et établit un tunnel entre votre organisation Bluemix et l'emplacement distant auquel vous voulez vous connecter. Vous pouvez configurer et créer une passerelle sécurisée en utilisant l'interface utilisateur Bluemix ou un package d'API.

Pour plus d'informations, voir Initiation à Secure Gateway.

III-B-6. Gestion des événements et des informations de sécurité

Vous pouvez utiliser les outils SIEM (gestion des événements et informations de sécurité) pour analyser les alertes de sécurité dans les journaux d'application. L'un de ces outils est IBM Security QRadar® SIEM, qui fournit la sécurité intérieure dans les environnements de cloud. Pour plus d'informations, voir IBM QRadar Security Intelligence Platform.

IV. Déploiement de la sécurité Bluemix

L'architecture de déploiement de la sécurité Bluemix inclut différents flux d'informations pour les utilisateurs et les développeurs d'applications afin d'assurer un accès sécurisé.

Image non disponible
Figure 3. Architecture de déploiement de la sécurité Bluemix

Pour les utilisateurs d'application Bluemix, le flux d'un utilisateur d'application est le suivant :

  1. Via un pare-feu, avec prévention contre les intrusions et sécurité du réseau ;
  2. Via IBM DataPower Gateway avec proxy inverse et proxy de terminaison SSL ;
  3. Via le routeur réseau ;
  4. Atteint le contexte d'exécution d'application dans l'agent DEA (Droplet Execution Agent).

Le développeur Bluemix suit les deux flux principaux : pour la connexion ainsi que pour le développement et le déploiement.

Le flux de connexion d'un développeur est le suivant :

  • Pour les développeurs qui se connectent à l'environnement Bluemix public, le flux est le suivant :
    1. Via le service IBM Single Sign On ;
    2. Via l'identité Web IBM.
  • Pour les développeurs qui se connectent à l'environnement Bluemix dédié ou local, le flux utilise le protocole LDAP de l'entreprise.
  • Le flux de développement et de déploiement est le suivant :
    1. Via un pare-feu, avec prévention contre les intrusions et sécurité du réseau. Applicable à l'environnement Bluemix dédié seulement ;
    2. Via IBM DataPower Gateway avec proxy inverse et proxy de terminaison SSL ;
    3. Via le routeur réseau ;
    4. Via l'autorisation avec le contrôleur de cloud Cloud Foundry, pour assurer l'accès uniquement aux applications et aux instances de service qui sont créées par le développeur.

Pour les administrateurs de l'environnement Bluemix dédié et de l'environnement Bluemix local, le flux d'un administrateur est le suivant :

  1. Via un pare-feu, avec prévention contre les intrusions et sécurité du réseau ;
  2. Via IBM DataPower Gateway avec proxy inverse et proxy de terminaison SSL ;
  3. Via le routeur réseau ;
  4. Atteint la page Administration dans l'interface utilisateur Bluemix.

En plus des utilisateurs décrits dans ces scénarios, une équipe autorisée en charge des opérations de sécurité IBM effectue diverses tâches de sécurité opérationnelles, par exemple :

  • des analyses de vulnérabilités. Pour l'environnement Bluemix local, vous êtes en charge de la sécurité physique et des analyses au sein de votre pare-feu ;
  • la gestion de l'accès utilisateur ;
  • le renforcement du système d'exploitation en appliquant des correctifs régulièrement avec IBM Endpoint Manager ;
  • la gestion des risques avec protection contre les intrusions ;
  • la surveillance de la sécurité avec QRadar ;
  • la génération de rapports de sécurité disponibles dans la page Administration.

Pour tester ces différents éléments de sécurité présentées dans ce tutoriel, vous devez commencer par créer un compte gratuitement sur Bluemix.

V. Note de la rédaction Developpez.com

Developpez.com remercie IBM pour l'autorisation de publication de ce tutoriel.

Nos remerciements à Guillaume Sigui pour la mise au gabarit et Jacques Jean pour la relecture orthographique.

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

  

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2017 IBM. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.