Sécurité & Tests    
  • ​Sécurité

    Introduction

    La sécurité avec le Big Data est rendue difficile car :

    • de multiples solutions composent une plateforme Big Data et il manque encore des solutions globales de management,
    • le principe même du Big Data est un système réparti sur plusieurs noeuds,
    • hétérogénéité des solutions (stockage, traitements, analytics, indexation, ... ). 

    De plus le Big Data est centrée sur les données et certaines sont naturellement sensibles : 

    • données bancaires (PCI-DSS),
    • données médicales,
    • données personnelles.

    Challenges 

    Les enjeux de la sécurité :

    • confidentialité des données
    • contrôle des accès à la plateforme
    • sécurisation des échanges
    • audit. 

    Traiter les données àcaractère personnel :

    En France, l’usage des données à caractère personnel est réglementé par la loi “Informatique et Libertés”. 

    Utilisation du Cloud Cloud : où sont stockées les données (dans quel pays et donc sous quelle réglementation ?) 

    Sécurité des logiciels/protocoles utilisés : régulièrement des failles de sécurité sont découvertes dans les produits et protocoles utilisés quotidiennement (java, SSL, etc.), les solutions Big Data ne sont évidemment pas épargnées. 

    Enfin la mise en oeuvre des solutions de sécurité ne doit pas dénaturer la plateforme Big Data et notamment ses points forts :

    • scalabilité,
    • l’anonymisation ne doit pas perturber l’analyse sémantique et statistique des données,
    • performances, ...

    Implémentation

    A moins d’une architecture simple basée sur une seule solution, il n’existe pas de solutions globales permettant de sécuriser une architecture Big Data.

    La sécurisation devra s’appuyer sur les possibilités offertes par les différentes solutions concernant la plateforme même si le système le plus sensible est bien évidemment le stockage.

    Mais il ne faudra pas négliger :

    • le transfert des données, 
    • le traitement des données,
    • la visualisation des données, ...

    En résumé la sécurisation d’une plateforme de Big Data est un chantier à part entière et demande une vision et une maîtrise de l’ensemble des solutions.

    Enfin les mécanismes de sécurisation sont souvent inclus dans les versions commerciales des solutions et peuvent à eux seuls justifier l’achat d’une licence et du support.

  • ​Tests

    Introduction

    De nombreux points vont rendre les tests plus complexes dans les architectures Big Data :

    • système hétérogène et distribué,
    • volumétrie,
    • données sensibles (anonymisation).

    Type de tests :

    • données,
    • infrastructure (résilience du système),
    • validation des résultats.

    Challenges 

    Voici les sources des dysfonctionnements dans les systèmes distribués d’après une enquête (Source : https://www.usenix.org/system/files/conference/osdi14/osdi14-paper-yuan.pdf).

    Le total dépassant les 100 % car il y a souvent plusieurs événements à l’origine du dysfonctionnement. 

     

    Événement à l’origine du dysfonctionnement
    Démarrage du service 58%
    Écriture fichier/base depuis le client 32%
    Nœud injoignable (réseau, crash, etc.) 24%
    Changement configuration 23%
    Ajout d’un nœud au cluster 15%
    Lecture fichier/base depuis le client 13%
    Redémarrage d’un nœud (planifié) 9%
    Corruption données 3%
    Autres 4%

    On constate que seule une minorités des événements à pour origine l’utilisation du système : 

    1. Écriture fichier/base depuis le client 
    2. Lecture fichier/base depuis le client 
    3. Corruption données 

    Les autres événements sont donc largement testables et peuvent être anticipés. 

    Les tests d’intégration et de robustesse sont donc essentiels dans une architecture Big Data. 

    Ce ne sont pas les seuls tests qui doivent être implémentés.

    Catégories de tests

    Test intégration des données

    Vérifier la capacité de la plateforme à intégrer les sources de données :

    • qualité des données,
    • intégration de multiples formats de données

    Test transformation des données

    • vérifier la chaîne de valorisation des données de la plateforme,
    • validation des résultats.

    Test chaîne d’intégration et de déploiement

    • vérifier l’automatisation du déploiement de la plateforme,
    • une plateforme automatisée diminue fortement les risques d’indisponibilité de la plateforme et améliorer la reproductibilité entre les différents environnements. 

    Test scalabilité

    • vérifier le comportement de la plateforme en cas d’ajout/suppression de nœuds,
    • infrastructure (résilience du système).

    Test de sécurité

    • vérifier la vulnérabilité de la plateforme (données et traitements),
    • qualifier la sensibilité des données et donc qui peut (et ne peut pas y avoir accès),
    • en fonction de ces besoins, valider que l’accès aux données, soit directement dans la zone de stockage ou bien au moyen de traitements, n’est pas possible. 

    Test de performances

    • vérifier les limites et le comportement de la plateforme sous fortes sollicitations,
    • les sollicitations doivent correspondre à des besoins réels (même futurs) afin d’éviter de sur dimensionner la plateforme,
    • ceci permettra de fixer les limites d’utilisation et les seuils qui nécessiteront une adaptation de la plateforme : 
      • ajout de machines, 
      • changement technologique.

    Solutions de tests

    Générateurs de données

    Pas de tests sans données réaliste !

    L’idéal est bien sur d’utiliser des données réelles mais ce n’est pas toujours possible.

    Mockaroo est un générateur online de données : http://www.mockaroo.com/

    NoSQL :

    NoSQL Unit (MongoDB, Cassandra, HBase, Redis, Neo4j)

    Robustesse :

    • Toxiproxy (Shopify) : Un proxy écrit en Ruby permettant de simuler des coupure ou des ralentissement dans les réponses des services
    • Jepsen : Outil pour simuler un partitionnement réseau
    • Chaos Monkey (Netflix) : Outil automatisé qui va permettre de simuler des pannes dans chacun des éléments de l’architecture.
ECRIVEZ NOUS SI VOUS AVEZ UNE QUESTION SUR CE CHAPITRE
Pdf 11.39Mo
loading
POSEZ-NOUS VOTRE QUESTION
loading