Visibilité des données dans les tables et vues système - Amazon Redshift

Visibilité des données dans les tables et vues système

Il existe deux classes de visibilité pour les données dans les tables et les vues système : la visibilité des utilisateurs et la visibilité des super-utilisateurs.

Seuls les utilisateurs disposant de privilèges peuvent afficher les données de ces tables qui se trouvent dans la catégorie visible du super-utilisateur. Les utilisateurs standard peuvent afficher les données des tableaux visibles de l'utilisateur. Pour permettre à un utilisateur standard d'avoir accès aux tableaux visibles du super-utilisateur, GRANT-lui le privilège SELECT sur ce tableau.

Par défaut, dans la plupart des tableaux visibles des utilisateurs, les lignes générées par un autre utilisateur sont invisibles pour un utilisateur standard. Si un utilisateur standard obtient un SYSLOG ACCESS illimité, celui-ci peut voir toutes les lignes des tableaux visibles des utilisateurs, y compris les lignes générées par un autre utilisateur. Pour plus d'informations, consultez ALTER USER ou CREATE USER. Toutes les lignes de SVV_TRANSACTIONS sont visibles de tous les utilisateurs.

Note

Accorder à un utilisateur un accès illimité aux tableaux système permet à celui-ci de voir les données générées par d'autres utilisateurs. Par exemple, STL_QUERY et STL_QUERY_TEXT contiennent le texte complet des instructions INSERT, UPDATE et DELETE, qui peuvent contenir des données confidentielles générées par l'utilisateur.

Un super-utilisateur peut afficher toutes les lignes de toutes les tables. Pour permettre à un utilisateur standard d'avoir accès aux tableaux visibles du super-utilisateur, GRANT-lui le privilège SELECT sur ce tableau.

Filtrage des requêtes générées par le système

Les tables et vues système associées à une requête, telles que SVL_QUERY_SUMMARY, SVL_QLOG et d'autres, contiennent généralement un grand nombre d'instructions générées automatiquement qu'Amazon Redshift utilise pour surveiller le statut de la base de données. Ces requêtes générées par le système sont visibles d'un super-utilisateur, mais sont rarement utiles. Pour les filtrer lors de la sélection d'une table ou d'une vue système qui utilise la colonne userid, ajoutez la condition userid > 1 à la clause WHERE. Exemples :

select * from svl_query_summary where userid > 1