範例 - Amazon Redshift

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

範例

以下範例會將 GUESTS 使用者群組在 SALES 資料表上的 INSERT 權限撤銷。此命令會使 GUESTS 的成員無法使用 INSERT 命令將資料載入 SALES 資料表。

revoke insert on table sales from group guests;

以下範例會將使用者 fred 對 QA_TICKIT 結構描述中所有資料表的 SELECT 權限撤銷。

revoke select on all tables in schema qa_tickit from fred;

下列範例會撤銷使用者 bobr 從檢視選取的權限。

revoke select on table eventview from bobr;

以下範例會將所有使用者在 TICKIT 資料庫中建立暫存資料表的權限撤銷。

revoke temporary on database tickit from public;

下列範例會撤銷使用者 user1cust_profile 資料表中 cust_namecust_phone 資料欄的 SELECT 權限。

revoke select(cust_name, cust_phone) on cust_profile from user1;

下列範例會撤銷 sales_group 群組對 cust_namecust_phone 資料欄的 SELECT 權限,以及對 cust_profile 資料表中 cust_contact_preference 資料欄的 UPDATE 權限。

revoke select(cust_name, cust_phone), update(cust_contact_preference) on cust_profile from group sales_group;

下列範例顯示 ALL 關鍵字的使用方式,以撤銷 sales_admin 群組對資料表 cust_profile 中三個資料欄的 SELECT 和 UPDATE 權限。

revoke ALL(cust_name, cust_phone,cust_contact_preference) on cust_profile from group sales_admin;

以下範例會撤銷 user2 使用者對 cust_profile_vw 檢視中 cust_name 資料欄的 SELECT 權限。

revoke select(cust_name) on cust_profile_vw from user2;

從資料共用建立的資料庫撤銷 USAGE 權限的範例

下列範例會從 13b8833d-17c6-4f16-8fe4-1a018f5ed00d 命名空間撤銷對 salesshare 資料共用的存取權。

REVOKE USAGE ON DATASHARE salesshare FROM NAMESPACE '13b8833d-17c6-4f16-8fe4-1a018f5ed00d';

下列範例會撤銷 sales_db 上來自 Bob 的 USAGE 權限。

REVOKE USAGE ON DATABASE sales_db FROM Bob;

下列範例會撤銷 sales_schema 上來自 Analyst_role 的 USAGE 權限。

REVOKE USAGE ON SCHEMA sales_schema FROM ROLE Analyst_role;

撤銷限定範圍權限的範例

下列範例會將 Sales_db 資料庫中所有目前和未來結構描述的使用權從 Sales 角色撤銷。

REVOKE USAGE FOR SCHEMAS IN DATABASE Sales_db FROM ROLE Sales;

以下範例撤銷向使用者 alice 授予對 Sales_db 資料庫中所有目前和未來資料表的 SELECT 權限的能力。alice 保留對 Sales_db 中所有資料表的存取權。

REVOKE GRANT OPTION SELECT FOR TABLES IN DATABASE Sales_db FROM alice;

下列範例會將 Sales_schema 結構描述中函數的 EXECUTE 權限從 bob 角色撤銷。

REVOKE EXECUTE FOR FUNCTIONS IN SCHEMA Sales_schema FROM bob;

下列範例會從 Sales 角色撤銷 ShareDb 資料庫之 ShareSchema 結構描述中所有資料表的所有權限。當指定結構描述時,您也可以使用兩部分格式 database.schema 指定結構描述的資料庫。

REVOKE ALL FOR TABLES IN SCHEMA ShareDb.ShareSchema FROM ROLE Sales;

以下範例與前面的範例是相同的。您可以使用 DATABASE 關鍵字來指定結構描述資料庫,而不是使用兩部分格式。

REVOKE ALL FOR TABLES IN SCHEMA ShareSchema DATABASE ShareDb FROM ROLE Sales;

撤銷 ASSUMEROLE 權限的範例

以下是撤銷 ASSUMEROLE 權限的範例

超級使用者必須在叢集上執行一次下列陳述式,以啟用使用者和群組的 ASSUMEROLE 權限。

revoke assumerole on all from public for all;

下列陳述式會在所有操作的所有角色上撤銷使用者 reg_user1 的 ASSUMEROLE 權限。

revoke assumerole on all from reg_user1 for all;

撤銷 ROLE 權限的範例

下列範例會對 sample_role2 撤銷 sample_role1。

CREATE ROLE sample_role2; GRANT ROLE sample_role1 TO ROLE sample_role2; REVOKE ROLE sample_role1 FROM ROLE sample_role2;

下列範例會撤銷 user1 的系統權限。

GRANT ROLE sys:DBA TO user1; REVOKE ROLE sys:DBA FROM user1;

下列範例會從 user1 撤銷 sample_role1 和 sample_role2。

CREATE ROLE sample_role1; CREATE ROLE sample_role2; GRANT ROLE sample_role1, ROLE sample_role2 TO user1; REVOKE ROLE sample_role1, ROLE sample_role2 FROM user1;

下列範例會從 user1 撤銷具有 ADMIN OPTION 的 sample_role2。

GRANT ROLE sample_role2 TO user1 WITH ADMIN OPTION; REVOKE ADMIN OPTION FOR ROLE sample_role2 FROM user1; REVOKE ROLE sample_role2 FROM user1;

下列範例會從 sample_role5 撤銷 sample_role1 和 sample_role2。

CREATE ROLE sample_role5; GRANT ROLE sample_role1, ROLE sample_role2 TO ROLE sample_role5; REVOKE ROLE sample_role1, ROLE sample_role2 FROM ROLE sample_role5;

下列範例會撤銷 Sample_role1 的 CREATE SCHEMA 和 DROP SCHEMA 系統權限。

GRANT CREATE SCHEMA, DROP SCHEMA TO ROLE sample_role1; REVOKE CREATE SCHEMA, DROP SCHEMA FROM ROLE sample_role1;