カテゴリ:

コンテキスト関数 (セッションオブジェクト)

INVOKER_SHARE

クエリがデータ共有コンシューマーから呼び出された場合は共有名を返し、クエリがプロバイダーアカウントユーザーから呼び出された場合はnullを返します。

INVOKER_SHARE 関数を使用して、データ共有のコンシューマーアカウントとプロバイダーアカウントユーザーを区別するか、異なるマスキングポリシーを異なる共有に適用します。

このトピックの内容:

構文

INVOKER_SHARE()

引数

なし。

使用上の注意

ユーザーがデータ共有コンシューマーアカウントでクエリを実行すると、データ共有プロバイダーの列に適用されたマスキングポリシーが実行されます。

このポリシー式の例では、すべてのデータ共有コンシューマーに部分的にマスクされた値、プライマリセッションロールが PII_ROLE のデータ共有プロバイダーのユーザーにマスクされていない値、その他すべてのユーザーに完全にマスクされた値を提供します。

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

このポリシー式の例は、さまざまなマスキング方法をさまざまな共有に適用します。カスタム資格テーブルは、データ共有コンシューマーアカウントに使用するマスキング方法を決定します。

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;