カテゴリ:

ユーザーとセキュリティ DDL (アクセス制御)

REVOKE <privilege> ...FROM SHARE

データベースおよびその他のサポートされているデータベースオブジェクト(スキーマ、テーブル、ビュー)のアクセス権限を共有から取り消します。これらのオブジェクトの権限を取り消すと、共有からオブジェクトが効果的に削除され、共有からデータベースを作成したすべてのコンシューマーアカウントのオブジェクトへのアクセスが無効になります。

詳細については、 Secure Data Sharingの紹介 および 共有の操作 をご参照ください。

こちらもご参照ください:

GRANT <privilege> ...TO SHARE

REVOKE <権限> ... FROM ROLE

構文

REVOKE objectPrivilege ON
     {  DATABASE <name>
      | SCHEMA <name>
      | { TABLE <name> | ALL TABLES IN SCHEMA <schema_name> }
      | { VIEW <name> | ALL VIEWS IN SCHEMA <schema_name> }  }
  FROM SHARE <share_name>

条件:

objectPrivilege ::=
-- For DATABASE or SCHEMA
    USAGE
-- For TABLE or VIEW
    SELECT
-- For DATABASE
    REFERENCE_USAGE

パラメーター

名前

指定された権限が取り消されるオブジェクト(データベース、スキーマ、テーブル、またはセキュアビュー)の識別子を指定します。

スキーマ名

すべてのテーブルまたはビューに対して指定された権限が取り消されるスキーマの識別子を指定します。

共有名

指定された権限が取り消される共有の識別子を指定します。

使用上の注意

  • テーブルとビューを除き、各オブジェクト権限はロールから個別に取り消す必要があります。 ALL 句を使用して、指定されたスキーマ内のすべてのテーブルまたはビューの SELECT 権限をロールから取り消すことができます。

REVOKE SELECT ON VIEW mydb.shared_schema.view1 FROM SHARE share1;

REVOKE SELECT ON VIEW mydb.shared_schema.view3 FROM SHARE share1;

REVOKE USAGE ON SCHEMA mydb.shared_schema FROM SHARE share1;

REVOKE SELECT ON ALL TABLES IN SCHEMA mydb.public FROM SHARE share1;

REVOKE USAGE ON SCHEMA mydb.public FROM SHARE share1;

REVOKE USAGE ON DATABASE mydb FROM SHARE share1;

この例では、共有セキュアビューが別のデータベースのオブジェクトを参照することを禁止しています。

REVOKE REFERENCE_USAGE ON DATABASE database2 FROM SHARE share1;