Rôles de base de données : Mise à jour des messages d’erreur lors de l’attribution d’un partage

Attention

Ce changement de comportement est présent dans le bundle 2023_06.

Pour connaître le statut actuel du bundle, reportez-vous à Historique du bundle.

Les messages d’erreur associés à l’attribution d’un rôle de base de données à un partage à l’aide de la commande GRANT DATABASE ROLE … TO SHARE ont été modifiés.

Dans ces tables, le mot « résoudre » signifie que le rôle de propriétaire du rôle de base de données (rôle d’exécution) dispose du privilège approprié pour accéder à l’objet attribué au rôle de base de données. Par exemple, le rôle de propriétaire peut résoudre une table si le rôle de base de données dispose du privilège SELECT sur une table avec le privilège USAGE sur la base de données et le schéma qui stocke la table, et si le rôle de propriétaire dispose des mêmes privilèges.

Ce tableau répertorie les remplacements des messages d’erreur lors de l’attribution d’un rôle de base de données à un partage :

Comportement

Précédemment

Actuellement

Le rôle d’exécution peut résoudre l’objet, mais l’objet ne peut pas être partagé.

Impossible de partager un rôle de base de données bénéficiant du privilège « SELECT » sur l’objet « Table » : erreur de compilation SQL : une vue ne peut être partagée que si elle est créée en tant que vue SECURE ou marquée SECURE à l’aide de ALTER VIEW V SET SECURE.

Impossible de partager un rôle de base de données bénéficiant du privilège « SELECT » sur VIEW « DB.SCH.V » : erreur de compilation SQL : une vue ne peut être partagée que si elle est créée en tant que vue SECURE ou marquée SECURE à l’aide de ALTER VIEW V SET SECURE.

Le rôle de base de données ne peut pas résoudre l’objet et l’objet n’est pas partagé.

Impossible de partager un rôle de base de données auquel le privilège « SELECT » est attribué à un objet « Table ».

Impossible de partager un rôle de base de données auquel des privilèges non partageables sont attribués. Utilisez le rôle avec MANAGE GRANTS pour y remédier.

Le rôle de base de données peut résoudre un objet supprimé qui n’a pas été partagé.

Impossible de partager un rôle de base de données bénéficiant du privilège « SELECT » sur l’objet « Table » : erreur de compilation SQL : une vue ne peut être partagée que si elle est créée en tant que vue SECURE ou marquée SECURE à l’aide de ALTER VIEW VD SET SECURE.

Impossible de partager un rôle de base de données auquel le privilège « SELECT » est attribué sur DROPPED View « DB.DSCH.V ». Utilisez les rôles avec MANAGE GRANTS pour appeler CLEANUP_DATABASE_ROLE_GRANTS (« database_role_name », « share_name ») et révoquer les privilèges, puis attribuez le rôle de base de données au partage.

Le rôle de base de données ne peut pas résoudre un objet supprimé qui n’a pas été partagé.

Impossible de partager un rôle de base de données auquel le privilège « SELECT » est attribué à un objet « Table ».

Impossible de partager un rôle de base de données auquel des privilèges non partageables sont attribués. Utilisez le rôle avec MANAGE GRANTS pour y remédier.

En outre, la fonction système CLEANUP_DATABASE_ROLE_GRANTS permet de répondre au scénario dans lequel un rôle de base de données peut résoudre un objet supprimé qui n’a pas été partagé.

Cette table répertorie les messages d’erreur qui sont supprimés lorsque vous essayez d’accorder un rôle de base de données à un partage.

Comportement

Message d’erreur précédent

Résultat actuel

Le rôle de la base de données ne peut pas résoudre l’objet partagé.

Impossible de partager un rôle de base de données auquel le privilège « SELECT » est attribué à un objet « Table ».

Vous pouvez accorder le rôle de base de données au partage. Snowflake renvoie un message de statut de réussite.

Le rôle de base de données ne peut pas résoudre un objet supprimé qui a été partagé.

Impossible de partager un rôle de base de données auquel le privilège « SELECT » est attribué à un objet « Table ».

Vous pouvez accorder le rôle de base de données au partage. Snowflake renvoie un message de statut de réussite.

Réf : 1220