Tableaux sécurisés par rangée
Une table sécurisée (RST) ressemble à une table de base de données normale, mais renvoie des réponses différentes aux requêtes, en fonction de l'étiquette de sécurité de l'utilisateur. Seules les tables d'utilisateurs peuvent avoir une sécurité de ligne, qui peut être spécifiée lors de la création d'une table.
Pour créer un tableau à lignes sécurisées, vous devez disposer du privilège Créer un tableau. Même le propriétaire d'une table peut ne pas avoir le droit de voir toutes les lignes de la table. Pour créer un tableau à lignes sécurisées, utilisez la syntaxe suivante :
create table rst ... row security;
Les permissions suivantes sont des permissions de table sécurisées par ligne :
- ACCÈS À L'ÉTIQUETTE
- Permet la visibilité de la colonne des étiquettes.
- ÉTIQUETTE RESTRICT
- Permet à l'utilisateur de mettre à jour l'étiquette avec une valeur plus restrictive.
- LABEL EXPAND
- Permet à l'utilisateur de mettre à jour l'étiquette avec une valeur moins restrictive.
La table créée qui en résulte comporte une colonne supplémentaire nommée "_sec_label" de type varchar, avec une limite de 4000 caractères et la prise en charge de Latin9. Pour accéder à la colonne _sec_label, vous devez avoir le droit d'accéder à la colonne LABEL.
La liste suivante fournit des informations supplémentaires sur RST :
- Les utilisateurs peuvent INSÉRER des informations qu'ils ne sont pas autorisés à consulter s'ils disposent de l'autorisation RESTRICTER L'ÉTIQUETTE.
- Les opérations UPDATE et DELETE ne peuvent être effectuées que sur des lignes que l'utilisateur peut sélectionner.Important : s'il existe des EAR dans le système, vous pouvez renommer des objets et créer de nouveaux niveaux, catégories et cohortes, mais vous ne pouvez pas supprimer des niveaux, des catégories ou des cohortes et vous ne pouvez pas modifier la valeur d'un niveau.