La fonctionnalité SQL Correct sert de point d'entrée pour l'exécution des modifications SQL et exige un haut niveau de sécurité. Lorsque vous soumettez un ticket pour approbation, une série de règles de sécurité vérifie la demande. Seules les instructions SQL validées peuvent être exécutées.
Prérequis
Vous êtes Administrator, DBA ou Security Administrator.
Contexte
Les règles de sécurité de Data Management (DMS) offrent des fonctionnalités flexibles basées sur un langage spécifique au domaine (DSL). Vous pouvez ainsi personnaliser les niveaux de risque selon vos besoins et appliquer différents workflows d'approbation aux modifications en fonction de leur risque. Par exemple, vous pouvez restreindre strictement l'exécution SQL ou autoriser toutes les instructions avec plus de souplesse.
Points de contrôle du module SQL Correct
Point de contrôle | Description | Exemple |
Basic Configuration Item | Cette section contient cinq règles par défaut :
| - |
SQL execution rules | Restreint les instructions SQL exécutable dans la fenêtre SQL. Seules les instructions autorisées s'exécutent. Remarque Si deux règles contradictoires sont activées, la plus stricte s'applique. Par exemple, si les deux règles suivantes sont activées, le système applique la seconde.
| Pour autoriser uniquement les instructions DML à modifier la base de données de production, ajoutez la règle d'exécution SQL suivante : Hypothèses Signification : Si l'environnement de la base de données n'est pas un environnement de production et que l'instruction SQL est de type |
Risk Identification Rules | Identifie le niveau de risque des tickets soumis. Vous pouvez personnaliser les niveaux de risque en fonction de conditions telles que l'environnement de la base de données, le nombre de lignes affectées et le type SQL. Remarque Différentes règles de sécurité attribuent différents niveaux de risque à une tâche de modification. Le niveau de risque final correspond au niveau le plus élevé parmi tous ceux identifiés. Par exemple, une tâche de modification SQL comportant 5 risques faibles, 3 risques moyens et 1 risque élevé est classée comme présentant un risque élevé. | Pour définir les environnements hors ligne comme présentant un risque faible, ajoutez la règle d'identification des risques suivante : Signification : Si l'environnement de la base de données n'est pas un environnement de production, le niveau de risque est faible. |
Risk Approval Rules | Configurez ou personnalisez les règles d'approbation pour différents niveaux de risque. Si une modification de base de données ne correspond à aucun niveau de risque au point de contrôle Risk Identification Rules, elle utilise le workflow d'approbation spécifié par le Default approval template for data changes dans la section Basic Configuration Item. | Par défaut, un environnement de staging est considéré comme présentant un risque faible et ne nécessite pas d'approbation. |
Batch data import rules | Règles de validation applicables aux tickets Data Import. | Autorise l'importation par lot des instructions d'insertion. |
Changer le modèle d'approbation par défaut
Connectez-vous à DMS 5.0.
-
Placez le pointeur sur l'icône
dans le coin supérieur gauche et choisissez .RemarqueSi vous utilisez la console DMS en mode normal, choisissez dans la barre de navigation supérieure.
Dans l'onglet Security Rules, recherchez l'ensemble de règles cible et cliquez sur Edit dans la colonne Actions.
Dans le volet de navigation gauche de la page Details, cliquez sur SQL Correct.
Dans la section Checkpoints, cliquez sur Basic Configuration Item.
Dans la ligne Data change default approval Template, cliquez sur Edit dans la colonne Actions.
Dans la boîte de dialogue Change Configuration Item, cliquez sur Switch Approval Template.
-
Dans la boîte de dialogue Switch Approval Template, recherchez le modèle cible et cliquez sur Select dans la colonne Actions.
RemarqueSi les tickets ne nécessitent pas d'approbation, cliquez sur Reset to Approval-Free pour contourner l'étape d'approbation.
Cliquez sur Submit.
Facteurs et actions pour le module SQL Correct
Facteurs
Les facteurs sont des variables système intégrées. Utilisez-les pour obtenir des informations contextuelles lors de la vérification des règles de sécurité, telles que le type SQL et le nombre de lignes affectées.
Tous les facteurs commencent par
@fac.suivi du nom du facteur.Chaque point de contrôle d'un module fournit des facteurs spécifiques.
Tableau 1. Liste des facteurs
Facteur | Description |
@fac.env_type | Le type d'environnement. La valeur correspond à l'identifiant de l'environnement, tel que |
@fac.sql_type | Le type du script SQL, tel que |
@fac.detail_type | Le type de modification de données :
|
@fac.is_logic | Indique si la base de données est logique. |
@fac.extra_info | Autres informations sur la modification. Ce facteur n'est pas utilisé. |
@fac.is_ignore_affect_rows | Indique s'il faut ignorer la vérification. |
@fac.insert_rows | Le nombre de lignes affectées par une opération d'insertion. |
@fac.update_delete_rows | Le nombre de lignes affectées. |
@fac.max_alter_table_size | La taille maximale de l'espace table de la table modifiée. |
@fac.is_has_security_column | Indique si le script SQL contient des colonnes sensibles. |
@fac.security_column_list | Liste des colonnes sensibles contenues dans le script SQL. |
@fac.risk_level | Le niveau de risque détecté. Les valeurs valides sont des chaînes en minuscules, classées du plus faible au plus élevé :
|
@fac.risk_reason | La raison de la détection de ce niveau de risque. |
@fac.table_name_list | Liste des noms de tables impliqués dans la modification SQL. Exemple : Signification : Si la modification SQL implique la table tb_order ou tb1_order, le niveau de risque est élevé. |
Actions
Une action est un comportement exécuté par le système lorsque la condition if est remplie. Les exemples incluent l'interdiction de soumettre un ticket, la sélection d'un workflow, l'autorisation d'exécution et le rejet d'exécution.
Toutes les actions commencent par
@act.suivi du nom de l'action.Chaque point de contrôle d'un module fournit des actions spécifiques.
Tableau 2. Liste des actions
Action | Description |
@act.allow_submit | Autorise la soumission du ticket pour exécution. |
@act.allow_execute_direct | Autorise l'exécution directe dans la console SQL. |
@act.forbid_execute | Interdit l'exécution. |
@act.mark_risk | Marque un risque. Le premier paramètre spécifie le niveau de risque et accepte uniquement les quatre valeurs suivantes en minuscules (du plus faible au plus élevé) : |
@act.do_not_approve | Spécifie l'ID d'un modèle d'approbation. Pour plus d'informations, consultez la rubrique Set approval workflows. |
@act.choose_approve_template | |
@act.choose_approve_template_with_reason |