

 Amazon Redshift 將不再支援從修補程式 198 開始建立新的 Python UDFs。現有 Python UDF 將繼續正常運作至 2026 年 6 月 30 日。如需詳細資訊，請參閱[部落格文章](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)。

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

# 範例
<a name="r_REVOKE-examples"></a>

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

```
revoke insert on table sales from group guests;
```

以下範例會將使用者 `fred` 對 QA\$1TICKIT 結構描述中所有資料表的 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;
```

下列範例會撤銷使用者 `user1` 對 `cust_profile` 資料表中 `cust_name` 和 `cust_phone` 資料欄的 SELECT 權限。

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

下列範例會撤銷 `sales_group` 群組對 `cust_name` 和 `cust_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 權限的範例
<a name="r_REVOKE-examples-datashare"></a>

下列範例會從 `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;
```

## 撤銷限定範圍權限的範例
<a name="r_REVOKE-examples-scoped"></a>

下列範例會將 `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 權限的範例
<a name="r_REVOKE-examples-assumerole"></a>

以下是撤銷 ASSUMEROLE 權限的範例 

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

```
revoke assumerole on all from public for all;
```

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

```
revoke assumerole on all from reg_user1 for all;
```

## 撤銷 ROLE 權限的範例
<a name="r_REVOKE-examples-role"></a>

下列範例會對 sample\$1role2 撤銷 sample\$1role1。

```
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\$1role1 和 sample\$1role2。

```
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\$1role2。

```
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\$1role5 撤銷 sample\$1role1 和 sample\$1role2。

```
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\$1role1 的 CREATE SCHEMA 和 DROP SCHEMA 系統權限。

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