Rôles : changements relatifs à la façon dont les réattributions de droits sont enregistrées dans la vue GRANTS_TO_USERS¶
Attention
Ce changement de comportement est présent dans le bundle 2023_04.
Pour connaître le statut actuel du bundle, reportez-vous à Historique du bundle.
La sortie de la vue GRANTS_TO_USERS a été modifiée en ce qui concerne la manière dont les attributions d’un même rôle à un même utilisateur étaient enregistrées :
- Précédemment:
La vue comprenait une ligne pour chaque attribution du même rôle au même utilisateur. La valeur de la colonne DELETED_ON est NULL pour la ligne contenant la subvention active. Lors d’une réattribution de droits, la valeur de la colonne DELETED_ON de la ligne contenant l’attribution précédente est mise à jour en fonction de l’horodatage de la date de la réattribution.
- Actuellement:
La vue comprend une ligne pour l’attribution du même rôle au même utilisateur. Les réattributions d’un même rôle à un même utilisateur ne sont pas enregistrées comme de nouvelles lignes. La colonne DELETED_ON reste NULL tant que l’octroi est actif. La valeur de la colonne est mise à jour lorsque le rôle est REVOKED de l’utilisateur.
Après avoir révoqué le rôle de l’utilisateur, l’octroi du même rôle au même utilisateur sera enregistré dans une nouvelle ligne. Dans cette nouvelle ligne, la valeur de la colonne DELETED_ON est NULL car l’octroi est désormais actif.
Utilisez la requête suivante pour vous aider à déterminer si votre compte contient des enregistrements dans la vue qui seront affectés :
TRUE : la vue contient des enregistrements qui seront affectés.
FALSE: aucun enregistrement de la vue ne sera affecté.
SELECT
COUNT(*) > 0 AS IS_IMPACTED
FROM
SNOWFLAKE.ACCOUNT_USAGE.GRANTS_TO_USERS AS GL
INNER JOIN SNOWFLAKE.ACCOUNT_USAGE.GRANTS_TO_USERS AS GR
ON GL.ROLE = GR.ROLE
AND GL.GRANTED_TO = GR.GRANTED_TO
AND GL.GRANTEE_NAME = GR.GRANTEE_NAME
AND GL.GRANTED_BY = GR.GRANTED_BY
AND GL.DELETED_ON = GR.CREATED_ON
AND GR.DELETED_ON IS NOT NULL;
Réf : 1132