Cette rubrique explique comment utiliser Data Management Service (DMS) pour évaluer les performances et la sécurité de votre base de données. En mettant en œuvre des mesures préventives, vous garantissez la stabilité opérationnelle et évitez les pannes système dues à une surcharge de la base de données lors d'événements à fort trafic, prévenant ainsi les pertes financières potentielles.
Prérequis
Le mode de contrôle de l'instance doit être défini sur Security Collaboration. Pour plus d'informations, consultez la section Modes de contrôle.
Contexte
Lors d'événements à fort trafic, une augmentation soudaine de l'activité commerciale peut exercer une pression considérable sur les performances de votre base de données et sur la sécurité des données.
À l'approche d'un événement promotionnel majeur, votre base de données subira un test de charge important dû à l'augmentation du trafic. Lors de la préparation de l'événement, évaluez l'utilisation actuelle de votre base de données, estimez le volume de trafic attendu et comprenez comment votre équipe de développement interagira avec la base de données. Cette évaluation vous permet de mettre en œuvre proactivement des mesures préventives.
Sans mesures préventives, les événements à fort trafic peuvent provoquer des problèmes de base de données tels que :
Un membre de l'équipe opérationnelle a exécuté une requête lente pour collecter des statistiques sur l'événement, ce qui a finalement dégradé les performances commerciales.
Un développeur a modifié un schéma, impactant ainsi une autre activité commerciale exécutée sur la même base de données.
Performances et sécurité
Limiter les délais d'expiration des requêtes et des exports
Définissez les délais d'expiration des requêtes et des exports pour une instance cible dans DMS afin d'empêcher les instructions SQL de longue durée d'affecter votre activité.
Nous recommandons un délai d'expiration de requête de 60s et un délai d'expiration d'export de 600s pendant les périodes normales. Pour les événements à fort trafic, réduisez ces valeurs respectivement à 5s et 60s.
Pour les étapes détaillées, consultez la section Modifier une instance.
Dans la boîte de dialogue Modifier l'instance, localisez les champs Query timeout (s) et Export timeout (s). Saisissez les valeurs de délai d'expiration souhaitées et enregistrez vos modifications.
Limiter le nombre maximal de lignes par requête
Configurez le nombre maximal de lignes renvoyées par une seule requête dans les paramètres des règles de sécurité. Cela empêche les retours de données volumineux d'affecter le temps de réponse des requêtes commerciales normales.
Nous recommandons une limite de 200 rows pendant les périodes normales et de 10 rows lors d'événements à fort trafic. Pour les étapes détaillées, consultez la section Règles de sécurité de la console SQL.
Dans l'onglet Basic configurations de l'ensemble de règles, trouvez le paramètre Maximum number of returned rows per query, puis cliquez sur Edit pour modifier sa valeur.
Limiter la taille du balayage complet de table
Dans les paramètres des règles de sécurité, configurez la taille maximale de table autorisée pour un balayage complet. Cela empêche les développeurs d'exécuter des opérations de balayage complet sur des tables très volumineuses lors d'événements à fort trafic, ce qui pourrait affecter votre activité.
Nous recommandons une limite de 10240 MB pendant les périodes normales et de 1024 MB lors d'événements à fort trafic. Pour les étapes détaillées, consultez la section Règles de sécurité de la console SQL.
Dans l'onglet Basic configurations de l'ensemble de règles, trouvez le paramètre Limit the maximum allowed SQL full table scan (MB), puis cliquez sur Edit pour modifier sa valeur.
Sécurité des modifications
Bloquer les instructions SQL à haut risque
Utilisez une règle de sécurité pour contrôler les instructions SQL à haut risque (DQL, DDL, DML et DCL) et empêcher les exécutions susceptibles d'affecter votre activité.
Pendant les périodes normales, activez les règles selon les besoins. Lors d'événements à fort trafic, nous vous recommandons de bloquer les instructions SQL à haut risque telles que les DDL. Pour les étapes détaillées, consultez la section Règles de sécurité pour les modifications SQL. Dans la configuration des règles de sécurité, cliquez sur SQL change dans le volet de navigation de gauche et sélectionnez l'onglet SQL execution rules. Cette page affiche les règles d'exécution pour les instructions DML, DDL et DCL. Chaque type d'instruction dispose de deux règles : l'une autorisant l'exécution directe dans la console SQL (affichée comme désactivée) et l'autre nécessitant une exécution via un ticket (affichée comme activée). Gérez ces règles à l'aide des boutons Edit, Enable/Disable et Delete. Si aucune règle n'est activée, toutes les instructions et commandes SQL liées aux modifications sont bloquées.
Renforcer le processus d'approbation
Lors d'événements à fort trafic, nous vous recommandons d'ajouter des responsables de haut niveau ou des parties prenantes commerciales en tant que nœuds d'approbation dans le processus d'approbation.
Pour les opérations normales, configurez un processus d'approbation standard selon vos besoins, par exemple Developer-->data owner-->DBA. Pour les événements à fort trafic, nous recommandons un processus renforcé, tel que Developer-->data owner-->data owner's supervisor-->DBA. Pour les étapes détaillées, consultez la section Créer un processus d'approbation.
Contrôler les modifications avec des fenêtres de modification
Le moteur d'exécution applique une fenêtre de modification pour une instance en utilisant à la fois des politiques de blocage et d'autorisation.
Lors d'événements à fort trafic, nous vous recommandons de configurer des fenêtres de modification pour restreindre les moments où les utilisateurs peuvent initier des instructions DDL, DML et SELECT.
Dans la boîte de dialogue Change window list pour l'instance, cliquez sur Add pour créer une règle de fenêtre de modification. Chaque règle inclut un type (tel que Deny changes - DDL), une heure de début et de fin, ainsi qu'un commutateur d'activation/désactivation. Supprimez une règle unique en cliquant sur Delete ou effacez toutes les règles en cliquant sur Clear database change window.
Sécurité des données
Augmenter le niveau de sécurité des colonnes sensibles
Utilisez la fonctionnalité d'ajustement du niveau de sécurité des champs pour appliquer le masquage des données aux champs sensibles tels que les informations personnelles, les numéros de téléphone, les numéros d'identification et les données financières, afin d'améliorer la sécurité des données. Pour les étapes détaillées, consultez la section Ajuster les niveaux de sécurité des champs.
Après avoir augmenté le niveau de sécurité d'un champ, sa valeur s'affiche sous la forme (astérisques) dans les résultats de requête SQL au sein de DMS, indiquant que les données ont été correctement masquées.
Activer la fonctionnalité de filigrane numérique
Activez la fonctionnalité Digital watermark for data leak prevention dans DMS pour ajouter un filigrane sur toute la console. Cela permet d'éviter les fuites de données provenant de captures d'écran. Pour les étapes détaillées, consultez la section Filigrane numérique pour la prévention des fuites de données.
Sur la page Configuration management, recherchez « watermark », trouvez le paramètre [Data Security] Digital watermark for data leak prevention et cliquez sur Edit. Dans la boîte de dialogue Modify configuration item qui s'affiche, activez le commutateur et cliquez sur Confirm.
Gérer les données sensibles
Gérez efficacement les données sensibles en identifiant leur distribution, en appliquant des contrôles d'autorisations granulaires et le masquage des données, et en mettant en œuvre le principe du moindre privilège pour l'accès aux données. Pour les étapes détaillées, consultez la section Gérer les données sensibles.
La protection des données sensibles prend en charge diverses sources de données, telles que PolarDB, ADB et MySQL, et est compatible avec les environnements sur Alibaba Cloud, chez d'autres fournisseurs cloud et dans les centres de données sur site. Déployez des tâches d'identification (immédiates, ponctuelles ou périodiques) pour classer et noter automatiquement les données selon des normes de conformité telles que PIPL, CSL, DSL, GDPR, HIPAA et PCI DSS. Elle propose divers algorithmes de masquage des données, y compris le hachage, le remplacement, le masquage, la transformation et le chiffrement. Deux modes sont pris en charge : le masquage statique des données (pour la configuration de l'environnement, l'intégration des données et le développement des données) et le masquage dynamique des données (pour les requêtes de la console SQL, l'accès aux applications et l'accès API). Le contrôle d'accès granulaire est divisé en trois niveaux : aucune autorisation (contenu affiché sous la forme ), autorisation semi-masquée (contenu affiché sous la forme ***st) et autorisation en texte clair.
Contrôle d'accès au niveau des lignes
Utilisez le contrôle d'accès au niveau des lignes pour garantir que les utilisateurs ne peuvent accéder qu'aux lignes qui leur sont désignées dans une table. Pour les étapes détaillées, consultez la section Contrôle d'accès au niveau des lignes.
Dans la boîte de dialogue Control value details, vous pouvez afficher la liste des valeurs de ligne sous un Control group. La liste inclut des colonnes telles que Row value, Last modified by et Last modified at. La boîte de dialogue permet également de rechercher des valeurs de ligne et propose des options pour Add row value et Delete.
Définir les autorisations utilisateur pour l'accès aux métadonnées
Cela empêche les utilisateurs spécifiés d'accéder aux métadonnées (y compris les bases de données, les instances et les tables) pour lesquelles ils ne disposent pas d'autorisations. Pour les étapes détaillées, consultez la section Contrôle d'accès aux métadonnées.
Dans la liste de gestion des utilisateurs, trouvez l'utilisateur cible, cliquez sur More dans la colonne Actions correspondante, puis sélectionnez Access control dans le menu déroulant.
Définir la portée de visibilité des métadonnées
Cela empêche les utilisateurs non autorisés de rechercher ou d'accéder aux métadonnées. Pour les étapes détaillées, consultez la section Contrôle d'accès aux métadonnées.
Dans la liste des instances, cliquez sur More pour l'instance cible, puis sélectionnez Access control dans le menu déroulant.
Réponse d'urgence
Audit des opérations
Cette fonctionnalité vous aide à déterminer rapidement si un utilisateur a modifié une base de données ou une table spécifique dans DMS dans un délai spécifié. Pour les étapes détaillées, consultez la section Audit des opérations.
Dans le coin supérieur droit de la page SQL Console de DMS, cliquez sur Operation audit pour accéder à cette fonctionnalité.
Suivi des données
Utilisez cette fonctionnalité pour récupérer rapidement les données qui ont été supprimées ou mises à jour accidentellement. Pour les étapes détaillées, consultez la section Suivi des données.
La page des détails du ticket de suivi des données est organisée en trois sections : 1) Informations de base, qui incluent l'heure de soumission, le nom de la tâche, la plage de temps, la base de données (avec l'étiquette d'environnement), le nom de la table et le type de DML à récupérer (tel que Insert) ; 2) Acquisition de fichier, qui affiche la progression de la récupération des données avec une barre de progression ; et 3) Approbation. Une fois le ticket terminé, le statut en haut de la page passe à Ticket completed. Effectuez des actions ultérieures en utilisant des boutons tels que Create sub-ticket, Operation logs et Close ticket.
Opération DML sans verrouillage
En cas d'urgence, effectuez des mises à jour de données volumineuses (UPDATE, DELETE) sans provoquer de verrouillages à long terme, même pour les requêtes qui n'utilisent pas d'index. Pour plus d'informations, consultez la section Opération DML sans verrouillage.
Opération DDL sans verrouillage
Utilisez cette fonctionnalité en cas d'urgence pour effectuer des opérations telles que le redimensionnement des champs de table ou l'ajout d'index. Pour les étapes détaillées, consultez la section Activer la modification de schéma sans verrouillage.
Pour une assistance supplémentaire, rejoignez notre groupe d'utilisateurs DingTalk (ID de groupe : 21991247).