Guide de sécurité
Le composant de sécurité des données protège les bases de données cibles contre les requêtes non autorisées et les attaques par injection SQL. La fonctionnalité de protection des données est disponible uniquement en mode Proxy. Déployé en tant qu’intermédiaire entre les utilisateurs et les bases de données, DataSunrise intercepte toutes les requêtes entrantes et sortantes. Grâce à l’aide d’algorithmes avancés d’analyse SQL, il détecte les tentatives d’accès non autorisé, les attaques par injection SQL et toute activité suspecte violant les politiques de sécurité existantes.

En cas de tentative d’attaque ou d’abus de privilèges excessifs, en plus de bloquer les requêtes malveillantes, DataSunrise notifie de l’activité malveillante. Ainsi, les administrateurs de bases de données peuvent réagir en temps opportun aux incidents et prendre des mesures pour prévenir les attaques ciblées.
Les algorithmes de protection des données sont contrôlés au moyen de règles de sécurité dédiées. Les règles sont très adaptables aux différents besoins commerciaux. Vous pouvez créer et modifier des règles de sécurité des données dans la section Sécurité de la console Web de DataSunrise.
Dans cet article, nous montrons comment configurer une règle de sécurité des données pour empêcher la modification non autorisée des colonnes d’une table.
Création d’une règle de sécurité
Supposons que nous avons déjà créé le profil de la base de données cible. Pour empêcher la modification des colonnes de la table de test, il est nécessaire de créer et configurer une règle de sécurité. Voici ce que nous faisons :
- Nous naviguons vers Sécurité → Règles. Puis nous cliquons sur Ajouter une règle pour en créer une nouvelle.
- Nous configurons la règle de sécurité pour bloquer toutes les tentatives de modification de la table des clients (voir les notes ci-dessous).

La base de données cible est spécifiée dans la section Principale.

L’action “Block” est déjà définie (par défaut) dans la sous-section Action pour bloquer toutes les requêtes répondant aux conditions de la règle actuelle. Notez que la case Enregistrer l’événement dans le stockage est cochée, nous pourrons ainsi voir les événements de sécurité capturés par DataSunrise.

Comme le scénario actuel nécessite de prévenir les tentatives des utilisateurs de modifier certaines colonnes, le filtre du groupe d’objets est sélectionné dans la sous-section Filtre des déclarations : les cases à cocher INSERT, UPDATE et DELETE sont cochées. Ainsi, lorsque la règle est déclenchée, DataSunrise bloquera toutes les requêtes visant la modification de la table.
Les paramètres de filtrage incluent également la table “customers”, les colonnes “FirstName” et “LastName” spécifiées (Traiter la requête vers Bases de données, Schémas, Tables, Colonnes). Ainsi, la règle ne peut être déclenchée que par les requêtes dirigées vers les colonnes sélectionnées. Toutes les actions visant d’autres tables ou colonnes seront ignorées.
Résultats du blocage
Cette étape inclut la démonstration des résultats de sécurité des données de DataSunrise. La règle de sécurité des données créée précédemment est configurée pour être déclenchée par toute tentative de modification des colonnes “FirstName” et “LastName” de la table “customers” (c’est-à-dire qu’elle est déclenchée par des requêtes contenant des déclarations INSERT, UPDATE et DELETE).
- Interrogeons la base de données avec PGAdmin. La requête vise à modifier une entrée de la colonne “LastName” de “Wade” à “Burnwood” :
UPDATE public.customers
SET “LastName”=’Burnwood’
WHERE “LastName”=’Wade’;
- En conséquence, la requête est bloquée. Le blocage se fait sous la forme d’une erreur SQL (“ERREUR : La requête est bloquée”).

Pour consulter les événements de sécurité des données et les détails des événements, nous naviguons vers Sécurité → Événements. Dans la liste des événements capturés, nous trouvons l’événement d’intérêt et l’ouvrons :

Les détails de l’événement comprennent des informations de base et de session, le SQL de la requête et les objets de la base de données impliqués dans la requête.