Catégories :

Fonctions contextuelles (Objet de session)

INVOKER_SHARE

Renvoie le nom de partage si la requête est appelée à partir du consommateur de partage de données et null si la requête est appelée à partir de l’utilisateur du compte fournisseur.

Utilisez la fonction INVOKER_SHARE pour faire la différence entre un compte consommateur de partage de données et l’utilisateur du compte fournisseur, ou pour appliquer différentes politiques de masquage à différents partages.

Dans ce chapitre :

Syntaxe

INVOKER_SHARE()

Arguments

Aucun.

Notes sur l’utilisation

Lorsqu’une requête est exécutée par un utilisateur dans un compte client de partage de données, la politique de masquage appliquée aux colonnes du fournisseur de partage de données est exécutée.

Exemples

Cet exemple d’expression de politique fournit une valeur partiellement masquée pour tous les consommateurs de partage de données, une valeur non masquée pour les utilisateurs du fournisseur de partage de données avec le rôle de session principal de PII_ROLE et une valeur entièrement masquée pour tous les autres.

case
  when invoker_share() is not null then partial_mask(val)
  when current_role() in ('PII_ROLE') then val
  else '***-**-****'
end;

Cet exemple d’expression de politique applique différentes méthodes de masquage à différents partages, où une table de droits personnalisée détermine la méthode de masquage à utiliser pour un compte client de partage de données.

case
  when invoker_share() in SHARE1 then mask1_function(val)
  when invoker_share() in SHARE2 then mask2_function(val)
  when current_role() in PII_ROLE then val
  else '***-**-****'
end;