Contrôler la Visibilité des Noms de Tables
Gérer l’accès à un volume important de données au sein d’une organisation pose des défis considérables. En particulier lorsque de nombreuses personnes sont impliquées, assurer un accès contrôlé devient une tâche complexe.
Dans ces circonstances, la nécessité de protéger les données devient primordiale. L’accès non autorisé et la manipulation des données peuvent entraîner des conséquences importantes, soulignant l’importance de mettre en place des mesures de sécurité robustes.
Comprenant l’importance de cette préoccupation, DataSunrise propose une solution appelée Masquage de Données. En adoptant cette stratégie, les organisations peuvent protéger leurs données contre les activités non autorisées, renforçant ainsi leurs défenses contre les risques potentiels. Le masquage de données émerge comme un outil essentiel parmi diverses mesures de protection, permettant aux organisations de maintenir l’intégrité et la confidentialité des données dans le paysage complexe des dynamiques d’information modernes.
Le masquage de données offre plus que simplement masquer les données – il permet également de dissimuler des lignes entières d’informations. En créant une règle de masquage, des groupes d’utilisateurs spécifiques peuvent être restreints dans l’accès à certaines portions de données, garantissant que seules les informations pertinentes soient disponibles pour leurs tâches.
Pour illustrer, prenons le scénario où nous visons à cacher les noms de tables en fonction des différents départements de l’organisation en utilisant la fonctionnalité “CACHER LES LIGNES” dans DataSunrise.
Pour faciliter la visualisation, supposons que nous avons établi une connexion à une base de données PostgreSQL locale dans DataSunrise et que nous avons ensuite intégré la connexion proxy.
Tout d’abord, nous allons créer une règle de masquage en suivant les étapes suivantes.
Aller à Masquage > Règle de Masquage Dynamique > Créer une Nouvelle Règle.
Dans les paramètres généraux, donnez un nom approprié à la règle que vous allez créer. Choisissez le type de base de données et l’instance à laquelle vous souhaitez appliquer cette règle.
N’oubliez pas non plus d’activer la case à cocher “Enregistrer l’événement dans le stockage” afin de pouvoir vérifier que les événements de masquage se produisent dans la section Événements de Masquage Dynamique. Les autres champs sont facultatifs et peuvent être laissés vides s’ils ne sont pas nécessaires.
Ensuite, dans la session de filtrage, nous pouvons définir les conditions nécessaires. Par exemple, nous pouvons déterminer que la règle s’applique à des utilisateurs de base de données spécifiques ou à un groupe d’utilisateurs de BD. Ici, comme je ne veux pas que les données non liées au département RH soient accessibles à l’utilisateur “developer1”, je vais exclure cet utilisateur. Ainsi, si quelqu’un se connecte au SGBD avec le compte utilisateur “developer1”, il ne pourra pas accéder aux données restreintes.
Ou si il est nécessaire de cacher les données à plusieurs utilisateurs (ex: developer1+developer2 = groupe “testeurs’), il y a une option pour regrouper les utilisateurs dans des groupes associés.
Enfin, le paramètre principal de masquage peut être configuré. Étant donné que nous discutons d’un sujet concernant la dissimulation des noms de tables dans cet article, nous resterons avec l’option “Cacher les Lignes”.
Après avoir choisi “Cacher les Lignes”, cela nous dirigera vers les paramètres nécessaires pour cacher les tables. Ici, nous allons gérer la visibilité des noms de tables présents dans l’instance. Ainsi, nous allons cacher les lignes de l’objet système qui est pg_catalog.pg_class. Pour pouvoir sélectionner les objets système, il est important d’activer la case à cocher intitulée “Afficher les objets système”.
Note : Si vous n’êtes pas sûr de l’objet système utilisé dans PgAdmin pour construire l’affichage UI, le suivi d’activité des données (Service d’Audit) de DataSunrise est d’une grande aide. Les paramètres ci-dessous sont recommandés pour être activés car vous pourriez avoir besoin de tester plusieurs requêtes pour vérifier et contrôler la section suivante après leur exécution.
Il y aura des requêtes sur la requête réelle exécutée. En inscrivant l’« ID » de la traduction, vous pourrez vérifier le détail de la collecte et de l’affichage des données dans l’UI.
En plus de choisir “Cacher Toutes les Lignes”, il est aussi possible de cacher uniquement les lignes pertinentes contenant un mot-clé particulier en définissant la condition pour la valeur des lignes de la colonne qui doit être masquée.
Comme mentionné ci-dessus, je ne veux pas donner accès aux données du département RH à l’utilisateur “developer1”. Mais, les données du département IT lui seront visibles. Par conséquent, je filtre les noms de table contenant “it” pour que ces tables du département IT soient affichées à l’utilisateur “developer1”.
Une fois que vous avez terminé la configuration de tous les paramètres ci-dessus, cliquez sur “sauvegarder” pour enregistrer la règle.
Maintenant, tous les paramètres nécessaires pour cacher la table ont été configurés et la règle est prête à être appliquée.
Testons et vérifions si la règle de masquage créée fonctionne correctement.
Pour les tests, nous allons démontrer en utilisant pgadmin. Dans Pgadmin, connectez-vous à la même base de données via proxy. D’abord, je me connecterai en tant qu’utilisateur “postgres”.
Ensuite, testez la règle de masquage en exécutant la requête de sélection simple.
SELECT * FROM pg_catalog.pg_class;
Après l’exécution, vous pouvez encore voir la table de base de données de sortie avec à la fois les données des départements IT et RH à l’intérieur de la table. Les noms de table sont toujours visibles dans le panneau de gauche également. Parce que l’utilisateur “postgres” n’a pas été choisi comme utilisateur de base de données restreint.
Lorsque nous sommes connectés en tant qu’utilisateur de base de données « developer1 », nous ne pourrons pas voir les lignes liées à RH dans la table “pg_catalog.pg_class” car cet utilisateur est restreint pour accéder aux données du département RH mais peut toujours accéder aux données du département IT. De même, l’affichage de l’UI dans le panneau de gauche changera. Les tables autres que celles du département IT disparaîtront.
De cette manière, “Cacher les Lignes” du Masquage Dynamique des Données peut être utilisé pour protéger les données même des objets système tels que les noms de tables des utilisateurs indésirables de manière efficace.