Entreposage de données - Sécurité
L'objectif d'un entrepôt de données est de rendre de grandes quantités de données facilement accessibles aux utilisateurs, permettant ainsi aux utilisateurs d'extraire des informations sur l'entreprise dans son ensemble. Mais nous savons qu'il pourrait y avoir des restrictions de sécurité appliquées sur les données qui peuvent être un obstacle à l'accès aux informations. Si l'analyste a une vision restreinte des données, il est alors impossible de saisir une image complète des tendances au sein de l'entreprise.
Les données de chaque analyste peuvent être résumées et transmises à la direction où les différents résumés peuvent être agrégés. Comme les agrégations de résumés ne peuvent pas être les mêmes que celles de l'agrégation dans son ensemble, il est possible de passer à côté de certaines tendances de l'information dans les données à moins que quelqu'un analyse les données dans leur ensemble.
Exigences de sécurité
L'ajout de fonctionnalités de sécurité affecte les performances de l'entrepôt de données, il est donc important de déterminer les exigences de sécurité le plus tôt possible. Il est difficile d'ajouter des fonctionnalités de sécurité après la mise en service de l'entrepôt de données.
Pendant la phase de conception de l'entrepôt de données, nous devons garder à l'esprit quelles sources de données peuvent être ajoutées ultérieurement et quel serait l'impact de l'ajout de ces sources de données. Nous devrions considérer les possibilités suivantes pendant la phase de conception.
Si les nouvelles sources de données nécessiteront la mise en œuvre de nouvelles restrictions de sécurité et / ou d'audit?
Si les nouveaux utilisateurs ajoutés ont un accès restreint aux données qui sont déjà généralement disponibles?
Cette situation survient lorsque les futurs utilisateurs et les sources de données ne sont pas bien connus. Dans une telle situation, nous devons utiliser les connaissances commerciales et l'objectif de l'entrepôt de données pour connaître les exigences probables.
Les activités suivantes sont affectées par les mesures de sécurité -
- Accès utilisateur
- Charge de données
- Mouvement de données
- Génération de requêtes
Accès utilisateur
Nous devons d'abord classer les données, puis classer les utilisateurs sur la base des données auxquelles ils peuvent accéder. En d'autres termes, les utilisateurs sont classés en fonction des données auxquelles ils peuvent accéder.
Data Classification
Les deux approches suivantes peuvent être utilisées pour classer les données -
Les données peuvent être classées en fonction de leur sensibilité. Les données hautement sensibles sont classées comme très restreintes et les données moins sensibles sont classées comme moins restrictives.
Les données peuvent également être classées en fonction de la fonction du poste. Cette restriction permet uniquement à des utilisateurs spécifiques d'afficher des données particulières. Ici, nous limitons les utilisateurs à afficher uniquement la partie des données qui les intéresse et dont ils sont responsables.
Il y a quelques problèmes dans la deuxième approche. Pour comprendre, prenons un exemple. Supposons que vous construisiez l'entrepôt de données pour une banque. Considérez que les données stockées dans l'entrepôt de données sont les données de transaction pour tous les comptes. La question ici est de savoir qui est autorisé à voir les données de transaction. La solution consiste à classer les données selon la fonction.
User classification
Les approches suivantes peuvent être utilisées pour classer les utilisateurs -
Les utilisateurs peuvent être classés selon la hiérarchie des utilisateurs dans une organisation, c'est-à-dire que les utilisateurs peuvent être classés par services, sections, groupes, etc.
Les utilisateurs peuvent également être classés en fonction de leur rôle, les personnes étant regroupées dans les services en fonction de leur rôle.
Classification on basis of Department
Prenons un exemple d'entrepôt de données où les utilisateurs sont issus du département des ventes et du marketing. Nous pouvons avoir la sécurité par une vue d'entreprise de haut en bas, avec un accès centré sur les différents services. Mais il pourrait y avoir des restrictions sur les utilisateurs à différents niveaux. Cette structure est illustrée dans le diagramme suivant.
Mais si chaque service accède à des données différentes, nous devons concevoir l'accès de sécurité pour chaque service séparément. Cela peut être réalisé par les centres de données ministériels. Étant donné que ces magasins de données sont séparés de l'entrepôt de données, nous pouvons appliquer des restrictions de sécurité distinctes sur chaque magasin de données. Cette approche est illustrée dans la figure suivante.
Classification Based on Role
Si les données sont généralement disponibles pour tous les départements, il est alors utile de suivre la hiérarchie d'accès aux rôles. En d'autres termes, si les données sont généralement consultées par tous les services, appliquez des restrictions de sécurité selon le rôle de l'utilisateur. La hiérarchie d'accès aux rôles est illustrée dans la figure suivante.
Exigences d'audit
L'audit est un sous-ensemble de la sécurité, une activité coûteuse. L'audit peut entraîner de lourdes charges sur le système. Pour terminer un audit à temps, nous avons besoin de plus de matériel et, par conséquent, il est recommandé que, dans la mesure du possible, l'audit soit désactivé. Les exigences d'audit peuvent être classées comme suit -
- Connections
- Disconnections
- Accès aux données
- Changement de données
Note- Pour chacune des catégories susmentionnées, il est nécessaire de vérifier le succès, l'échec ou les deux. Du point de vue des raisons de sécurité, l'audit des pannes est très important. L'audit des échecs est important car ils peuvent mettre en évidence un accès non autorisé ou frauduleux.
Exigences du réseau
La sécurité du réseau est aussi importante que les autres titres. Nous ne pouvons ignorer l'exigence de sécurité du réseau. Nous devons considérer les questions suivantes -
Est-il nécessaire de crypter les données avant de les transférer vers l'entrepôt de données?
Existe-t-il des restrictions sur les itinéraires réseau que les données peuvent emprunter?
Ces restrictions doivent être examinées attentivement. Voici les points à retenir -
Le processus de cryptage et de décryptage augmentera les frais généraux. Cela exigerait plus de puissance de traitement et de temps de traitement.
Le coût du cryptage peut être élevé si le système est déjà un système chargé car le cryptage est supporté par le système source.
Mouvement de données
Il existe des implications de sécurité potentielles lors du déplacement des données. Supposons que nous devions transférer des données restreintes sous forme de fichier plat à charger. Lorsque les données sont chargées dans l'entrepôt de données, les questions suivantes se posent:
- Où le fichier plat est-il stocké?
- Qui a accès à cet espace disque?
Si nous parlons de la sauvegarde de ces fichiers plats, les questions suivantes se posent -
- Sauvegardez-vous des versions chiffrées ou déchiffrées?
- Ces sauvegardes doivent-elles être effectuées sur des bandes spéciales qui sont stockées séparément?
- Qui a accès à ces bandes?
Certaines autres formes de mouvement de données telles que les ensembles de résultats de requête doivent également être prises en compte. Les questions soulevées lors de la création de la table temporaire sont les suivantes -
- Où se tiendra cette table temporaire?
- Comment rendre ce tableau visible?
Nous devons éviter de bafouer accidentellement les restrictions de sécurité. Si un utilisateur ayant accès aux données restreintes peut générer des tables temporaires accessibles, les données peuvent être visibles par des utilisateurs non autorisés. Nous pouvons surmonter ce problème en ayant une zone temporaire distincte pour les utilisateurs ayant accès à des données restreintes.
Documentation
Les exigences d'audit et de sécurité doivent être correctement documentées. Cela sera traité comme une partie de la justification. Ce document peut contenir toutes les informations recueillies auprès de -
- Classification des données
- Classification des utilisateurs
- Exigences du réseau
- Exigences de mouvement et de stockage des données
- Toutes les actions vérifiables
Impact de la sécurité sur la conception
La sécurité affecte le code de l'application et les délais de développement. La sécurité affecte le domaine suivant -
- Développement d'applications
- Conception de base de données
- Testing
Développement d'applications
La sécurité affecte le développement global de l'application et elle affecte également la conception des composants importants de l'entrepôt de données tels que le gestionnaire de charge, le gestionnaire d'entrepôt et le gestionnaire de requêtes. Le gestionnaire de charge peut exiger un code de vérification pour filtrer les enregistrements et les placer à différents endroits. Des règles de transformation supplémentaires peuvent également être nécessaires pour masquer certaines données. Des métadonnées supplémentaires peuvent également être requises pour gérer les objets supplémentaires.
Pour créer et gérer des vues supplémentaires, le responsable de l'entrepôt peut avoir besoin de codes supplémentaires pour appliquer la sécurité. Des vérifications supplémentaires peuvent devoir être codées dans l'entrepôt de données pour éviter qu'il ne soit dupé en déplaçant des données vers un emplacement où elles ne devraient pas être disponibles. Le gestionnaire de requêtes requiert les modifications pour gérer les restrictions d'accès. Le gestionnaire de requêtes devra connaître toutes les vues et agrégations supplémentaires.
Conception de base de données
La mise en page de la base de données est également affectée car lorsque des mesures de sécurité sont mises en œuvre, il y a une augmentation du nombre de vues et de tables. L'ajout de la sécurité augmente la taille de la base de données et augmente donc la complexité de la conception et de la gestion de la base de données. Cela ajoutera également de la complexité à la gestion des sauvegardes et au plan de récupération.
Essai
Le test de l'entrepôt de données est un processus complexe et long. L'ajout de sécurité à l'entrepôt de données affecte également la complexité du temps de test. Cela affecte les tests des deux manières suivantes -
Cela augmentera le temps requis pour l'intégration et les tests du système.
Il y a des fonctionnalités supplémentaires à tester qui augmenteront la taille de la suite de tests.