REVOKE <権限> ... FROM SHARE

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

詳細については、 Secure Data Sharingについて および 共有の作成と設定 をご参照ください。

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

GRANT <権限> ... TO SHARE

REVOKE <権限> ... FROM ROLE

構文

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

条件:

objectPrivilege ::= -- For DATABASE REFERENCE_USAGE [ , ... ] -- For DATABASE, FUNCTION, or SCHEMA USAGE [ , ... ] -- For SEMANTIC VIEW REFERENCES [ , ... ] -- For TABLE EVOLVE SCHEMA [ , ... ] -- For EXTERNAL TABLE, ICEBERG TABLE, TABLE, or VIEW SELECT [ , ... ] -- For TAG READ 
Copy

パラメーター

name

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

schema_name

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

share_name

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

使用上の注意

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

  • Iceberg テーブルである TABLE オブジェクトを指定した場合、コマンドはそのIcebergテーブルから権限を取り消します。

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 SELECT ON ALL ICEBERG TABLES IN SCHEMA mydb.public FROM SHARE share1; REVOKE SELECT ON ALL DYNAMIC TABLES IN SCHEMA mydb.public FROM SHARE share1; REVOKE SELECT ON ICEBERG TABLE mydb.shared_schema.iceberg_table_1 FROM SHARE share1; REVOKE SELECT ON DYNAMIC TABLE mydb TO SHARE share1; REVOKE USAGE ON SCHEMA mydb.public FROM SHARE share1; REVOKE USAGE ON DATABASE mydb FROM SHARE share1; 
Copy

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

REVOKE REFERENCE_USAGE ON DATABASE database2 FROM SHARE share1; 
Copy