Data Management (DMS) vous permet de gérer les règles de sécurité des bases de données relationnelles et non relationnelles depuis l'onglet Console SQL. La définition et la classification de ces règles varient selon le type de base de données. Cette rubrique présente les points de contrôle, les facteurs et les actions disponibles dans l'onglet Console SQL pour les bases de données Redis.
Fonctionnement des règles de sécurité
Des points de contrôle évaluent les règles de sécurité de l'onglet Console SQL. Chaque point de contrôle intercepte une catégorie spécifique de commandes Redis avant leur exécution et applique les règles correspondantes.
Chaque règle suit une structure SI/ALORS :
IF : Une condition basée sur des facteurs, c'est-à-dire des variables système décrivant la commande en cours et l'utilisateur qui l'exécute (par exemple, s'il s'agit d'une opération d'écriture ou si l'environnement est de production).
ALORS : Une action, définissant le comportement de DMS lorsque la condition est remplie (par exemple, rejeter la commande ou l'exécuter sans vérifier les autorisations).
Le diagramme suivant illustre le flux d'évaluation :

DMS fournit des configurations et des règles prédéfinies pour chaque point de contrôle. Modifiez les configurations, changez l'état des règles ou créez des règles personnalisées pour répondre à vos exigences de contrôle d'accès. Pour plus d'informations, consultez la rubrique Configurer les règles de sécurité .
Points de contrôle
Chaque point de contrôle cible un groupe spécifique de commandes Redis. Les règles configurées sous un point de contrôle s'appliquent uniquement aux commandes de ce groupe.
Points de contrôle Redis standard
| Point de contrôle | Commandes contrôlées |
|---|---|
| Permission Execution Statement Criteria | Permet de définir des contraintes sur les autorisations d'exécution des commandes. Par exemple, configurez ce point de contrôle pour que DMS vérifie si l'utilisateur dispose des autorisations requises sur une base de données, une table ou une colonne lors de la soumission d'une commande. |
| Statement Criteria: Keys | Commandes liées aux clés |
| Statement Criteria: String | Commandes liées aux chaînes de caractères |
| Statement Criteria: List | Commandes liées aux listes |
| Statement Criteria: SET | Commandes liées aux ensembles |
| Statement Criteria: SortedSet | Commandes liées aux ensembles triés |
| Statement Criteria: Hash | Commandes liées aux tables de hachage |
| Statement Criteria: Other | Commandes n'appartenant à aucun des types ci-dessus |
Points de contrôle spécifiques à Tair
Ces points de contrôle s'appliquent uniquement aux instances utilisant les extensions Tair. Si votre instance Redis n'utilise pas les modules Tair, ces points de contrôle ne concernent pas votre configuration.
| Point de contrôle | Commandes contrôlées |
|---|---|
| Statement Criteria: Cpc | Commandes TairCpc |
| Statement Criteria: Ts | Commandes TairTS |
| Statement Criteria: Roaring | Commandes TairRoaring |
| Statement Criteria: Search | Commandes TairSearch |
Facteurs
Un facteur est une variable système intégrée fournissant le contexte nécessaire à l'évaluation des règles. Utilisez les facteurs pour rédiger la condition SI d'une règle de sécurité.
Les noms des facteurs utilisent le préfixe @fac. suivi du nom d'affichage du facteur. Chaque onglet de point de contrôle de la page Details de l'ensemble de règles de sécurité affiche les facteurs disponibles pour ce point de contrôle.
| Facteur | Description |
|---|---|
@fac.cmd_type |
Le type de la commande. Pour les valeurs valides, consultez la rubrique Prise en charge de la syntaxe pour Redis. |
@fac.env_type |
Le type d'environnement. La valeur correspond au nom d'affichage de l'environnement, tel que DEV ou PRODUCT. Pour plus d'informations, consultez la page Modifier le type d'environnement d'une instance. |
@fac.is_read |
Indique si la commande est une commande de lecture. Valeurs valides : true, false. |
@fac.is_write |
Indique si la commande est une commande d'écriture. Valeurs valides : true, false. |
@fac.current_sql |
La commande actuelle. |
@fac.user_is_admin |
Indique si l'utilisateur actuel est un administrateur DMS. Valeurs valides : true, false. |
@fac.user_is_dba |
Indique si l'utilisateur actuel est un administrateur de base de données (DBA). Valeurs valides : true, false. |
@fac.user_is_inst_dba |
Indique si l'utilisateur actuel est le DBA de l'instance de base de données actuelle. Valeurs valides : true, false. |
Actions
Une action définit le comportement de DMS lorsque la condition SI d'une règle est remplie. Les noms des actions utilisent le préfixe @act. suivi du nom d'affichage de l'action. Chaque onglet de point de contrôle de la page Details affiche les actions disponibles pour ce point de contrôle.
| Action | Description |
|---|---|
@act.reject_execute |
Rejette la demande d'exécution de la commande actuelle. |
@act.allow_execute |
Autorise l'exécution de la commande actuelle. |
@act.check_redis_permission |
Vérifie si l'utilisateur actuel dispose de l'autorisation d'exécuter la commande. Exécute la commande si l'utilisateur dispose de l'autorisation. |
@act.query_without_permission_check |
Exécute la commande actuelle sans vérifier les autorisations de l'utilisateur actuel. |
Étapes suivantes
Configurer les règles de sécurité — modifiez les règles prédéfinies, changez l'état des règles ou créez des règles personnalisées
Prise en charge de la syntaxe pour Redis — consultez toutes les commandes Redis prises en charge par DMS et les valeurs valides pour
@fac.cmd_type