

 Amazon Redshift tidak akan lagi mendukung pembuatan Python UDFs baru mulai Patch 198. Python yang ada UDFs akan terus berfungsi hingga 30 Juni 2026. Untuk informasi lebih lanjut, lihat [posting blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# MENCABUT
<a name="r_REVOKE"></a>

Menghapus izin akses, seperti izin untuk membuat, menjatuhkan, atau memperbarui tabel, dari pengguna atau peran.

Anda hanya dapat MEMBERIKAN atau MENCABUT izin PENGGUNAAN pada skema eksternal untuk pengguna database dan peran menggunakan sintaks ON SCHEMA. Saat menggunakan ON EXTERNAL SCHEMA with AWS Lake Formation, Anda hanya dapat MEMBERIKAN dan MENCABUT izin ke peran AWS Identity and Access Management (IAM). Untuk daftar izin, lihat sintaksnya.

Untuk prosedur tersimpan, `plpgsql` izin PENGGUNAAN PADA BAHASA diberikan kepada PUBLIK secara default. Izin EXECUTE ON PROCEDURE hanya diberikan kepada pemilik dan pengguna super secara default.

Tentukan dalam perintah REVOKE izin yang ingin Anda hapus. Untuk memberikan izin, gunakan [HIBAH](r_GRANT.md) perintah. 

## Sintaksis
<a name="r_REVOKE-synopsis"></a>

```
REVOKE [ GRANT OPTION FOR ]
{ { SELECT | INSERT | UPDATE | DELETE | DROP | REFERENCES | ALTER | TRUNCATE } [,...] | ALL [ PRIVILEGES ] }
ON { [ TABLE ] table_name [, ...] | ALL TABLES IN SCHEMA schema_name [, ...] }
FROM { username | ROLE role_name | GROUP group_name | PUBLIC } [, ...]
[ RESTRICT ]

REVOKE [ GRANT OPTION FOR ]
{ { CREATE | TEMPORARY | TEMP | ALTER } [,...] | ALL [ PRIVILEGES ] }
ON DATABASE db_name [, ...]
FROM { username | ROLE role_name | GROUP group_name | PUBLIC } [, ...]
[ RESTRICT ]

REVOKE [ GRANT OPTION FOR ]
{ { CREATE | USAGE | ALTER | DROP } [,...] | ALL [ PRIVILEGES ] }
ON SCHEMA schema_name [, ...]
FROM { username | ROLE role_name | GROUP group_name | PUBLIC } [, ...]
[ RESTRICT ]

REVOKE [ GRANT OPTION FOR ]
EXECUTE
    ON FUNCTION function_name ( [ [ argname ] argtype [, ...] ] ) [, ...]
    FROM { username | ROLE role_name | GROUP group_name | PUBLIC } [, ...]
[ RESTRICT ]

REVOKE [ GRANT OPTION FOR ]
{ { EXECUTE } [,...] | ALL [ PRIVILEGES ] }
    ON PROCEDURE procedure_name ( [ [ argname ] argtype [, ...] ] ) [, ...]
    FROM { username | ROLE role_name | GROUP group_name | PUBLIC } [, ...]
[ RESTRICT ]

REVOKE [ GRANT OPTION FOR ]
USAGE
    ON LANGUAGE language_name [, ...]
    FROM { username | ROLE role_name | GROUP group_name | PUBLIC } [, ...]
[ RESTRICT ]

REVOKE [GRANT OPTION FOR] 
{ { ALTER | DROP} [,...] | ALL [ PRIVILEGES ] }
    ON COPY JOB job_name [,...]
    FROM { username | ROLE role_name | GROUP group_name | PUBLIC } [, ...]    

REVOKE [GRANT OPTION FOR]
{ { ALTER | DROP | USAGE } [,...] | ALL [ PRIVILEGES ] }
    ON TEMPLATE template_name [,...]
    FROM { username | ROLE role_name | GROUP group_name | PUBLIC } [, ...]
```

### Mencabut izin tingkat kolom untuk tabel
<a name="revoke-column-level"></a>

Berikut ini adalah sintaks untuk izin tingkat kolom pada tabel dan tampilan Amazon Redshift. 

```
REVOKE { { SELECT | UPDATE } ( column_name [, ...] ) [, ...] | ALL [ PRIVILEGES ] ( column_name [,...] ) }
     ON { [ TABLE ] table_name [, ...] }
     FROM { username | ROLE role_name | GROUP group_name | PUBLIC } [, ...]
     [ RESTRICT ]
```

### Mencabut izin ASSUMEROLE
<a name="revoke-assumerole-permissions"></a>

Berikut ini adalah sintaks untuk mencabut izin ASSUMEROLE dari pengguna dan grup dengan peran tertentu. 

```
REVOKE ASSUMEROLE
    ON { 'iam_role' [, ...]  | default | ALL }
    FROM { user_name | ROLE role_name | GROUP group_name | PUBLIC } [, ...]
    FOR { ALL | COPY | UNLOAD | EXTERNAL FUNCTION | CREATE MODEL }
```

### Mencabut izin untuk Redshift Spectrum untuk Lake Formation
<a name="revoke-spectrum-integration-with-lf-permissions"></a>

Berikut ini adalah sintaks untuk integrasi Redshift Spectrum dengan Lake Formation.

```
REVOKE [ GRANT OPTION FOR ]
{ SELECT | ALL [ PRIVILEGES ] } ( column_list )
    ON EXTERNAL TABLE schema_name.table_name
    FROM { IAM_ROLE iam_role } [, ...]

REVOKE [ GRANT OPTION FOR ]
{ { SELECT | ALTER | DROP | DELETE | INSERT }  [, ...] | ALL [ PRIVILEGES ] }
    ON EXTERNAL TABLE schema_name.table_name [, ...]
    FROM { { IAM_ROLE iam_role } [, ...] | PUBLIC }

REVOKE [ GRANT OPTION FOR ]
{ { CREATE | ALTER | DROP }  [, ...] | ALL [ PRIVILEGES ] }
    ON EXTERNAL SCHEMA schema_name [, ...]
    FROM { IAM_ROLE iam_role } [, ...]
```

### Membatalkan izin datashare
<a name="revoke-datashare-permissions"></a>

**Izin penyimpanan data sisi produsen**  
Berikut ini adalah sintaks untuk menggunakan REVOKE untuk menghapus izin ALTER atau SHARE dari pengguna atau peran. Pengguna yang izinnya telah dicabut tidak dapat lagi mengubah datashare, atau memberikan penggunaan kepada konsumen. 

```
REVOKE { ALTER | SHARE } ON DATASHARE datashare_name
 FROM { username [ WITH GRANT OPTION ] | ROLE role_name | GROUP group_name | PUBLIC } [, ...]
```

Berikut ini adalah sintaks untuk menggunakan REVOKE untuk menghapus akses konsumen ke datashare.

```
REVOKE USAGE
 ON DATASHARE datashare_name
 FROM NAMESPACE 'namespaceGUID' [, ...] | ACCOUNT 'accountnumber' [ VIA DATA CATALOG ] [, ...]
```

Berikut ini adalah contoh pencabutan penggunaan datashare dari akun Lake Formation.

```
REVOKE USAGE ON DATASHARE salesshare FROM ACCOUNT '123456789012' VIA DATA CATALOG;
```

**Izin penyimpanan data sisi konsumen**  
Berikut ini adalah sintaks REVOKE untuk izin penggunaan berbagi data pada database atau skema tertentu yang dibuat dari datashare. Mencabut izin penggunaan dari database yang dibuat dengan klausa WITH PERMISSIONS tidak mencabut izin tambahan yang Anda berikan kepada pengguna atau peran, termasuk izin tingkat objek yang diberikan untuk objek yang mendasarinya. Jika Anda memberikan kembali izin penggunaan kepada pengguna atau peran tersebut, mereka akan mempertahankan semua izin tambahan yang mereka miliki sebelum Anda mencabut penggunaan.

```
REVOKE USAGE ON { DATABASE shared_database_name [, ...] | SCHEMA shared_schema}
 FROM { username | ROLE role_name | GROUP group_name | PUBLIC } [, ...]
```

### Membatalkan izin tercakup
<a name="revoke-scoped-permissions"></a>

Izin tercakup memungkinkan Anda memberikan izin kepada pengguna atau peran pada semua objek dari tipe dalam database atau skema. Pengguna dan peran dengan izin cakupan memiliki izin yang ditentukan pada semua objek saat ini dan masa depan dalam database atau skema.

Anda dapat melihat cakupan izin cakupan tingkat database di. [SVV\$1DATABASE\$1PRIVILEGES](r_SVV_DATABASE_PRIVILEGES.md) Anda dapat melihat cakupan izin cakupan tingkat skema di. [SVV\$1SCHEMA\$1PRIVILEGES](r_SVV_SCHEMA_PRIVILEGES.md)

Untuk informasi selengkapnya tentang izin tercakup, lihat. [Izin tercakup](t_scoped-permissions.md)

Berikut ini adalah sintaks untuk mencabut izin cakupan dari pengguna dan peran. 

```
REVOKE [ GRANT OPTION ] 
{ CREATE | USAGE | ALTER | DROP } [,...] | ALL [ PRIVILEGES ] }
FOR SCHEMAS IN
DATABASE db_name 
FROM { username | ROLE role_name } [, ...]

REVOKE [ GRANT OPTION ]
{ { SELECT | INSERT | UPDATE | DELETE | DROP | ALTER | TRUNCATE | REFERENCES } [, ...] } | ALL [PRIVILEGES] } }
FOR TABLES IN
{ SCHEMA schema_name [ DATABASE db_name ] | DATABASE db_name }
FROM { username | ROLE role_name } [, ...]

REVOKE [ GRANT OPTION ] { EXECUTE | ALL [ PRIVILEGES ] }
FOR FUNCTIONS IN 
{ SCHEMA schema_name [DATABASE db_name ] | DATABASE db_name }
FROM { username | ROLE role_name } [, ...]

REVOKE [ GRANT OPTION ] { EXECUTE | ALL [ PRIVILEGES ] }
FOR PROCEDURES IN
{ SCHEMA schema_name [DATABASE db_name ] | DATABASE db_name }
FROM { username | ROLE role_name } [, ...]

REVOKE [ GRANT OPTION ] USAGE
FOR LANGUAGES IN
DATABASE db_name
FROM { username | ROLE role_name } [, ...]  

REVOKE [GRANT_OPTION] 
{ { CREATE | ALTER | DROP} [,...] | ALL [ PRIVILEGES ] }
FOR COPY JOBS 
IN DATABASE db_name
FROM { username [ WITH GRANT OPTION ] | ROLE role_name } [, ...]      

REVOKE [ GRANT OPTION ]
{ {ALTER | DROP  | USAGE } [,...] | ALL [ PRIVILEGES ] }
FOR TEMPLATES IN
{ SCHEMA schema_name [DATABASE db_name ] | DATABASE db_name }
FROM { username | ROLE role_name } [, ...]
```

Perhatikan bahwa izin cakupan tidak membedakan antara izin untuk fungsi dan prosedur. Misalnya, pernyataan berikut mencabut `EXECUTE` izin untuk fungsi dan prosedur dari `bob` dalam skema. `Sales_schema` 

```
REVOKE EXECUTE FOR FUNCTIONS IN SCHEMA Sales_schema FROM bob;
```

### Membatalkan izin pembelajaran mesin
<a name="revoke-model-permissions"></a>

Berikut ini adalah sintaks untuk izin model pembelajaran mesin di Amazon Redshift.

```
REVOKE [ GRANT OPTION FOR ]
    CREATE MODEL FROM { username | ROLE role_name | GROUP group_name | PUBLIC } [, ...]
    [ RESTRICT ]

REVOKE [ GRANT OPTION FOR ]
    { EXECUTE | ALL [ PRIVILEGES ] }
    ON MODEL model_name [, ...]

    FROM { username | ROLE role_name | GROUP group_name | PUBLIC } [, ...]
    [ RESTRICT ]
```

### Mencabut izin peran
<a name="revoke-roles"></a>

Berikut ini adalah sintaks untuk mencabut izin peran di Amazon Redshift.

```
REVOKE [ ADMIN OPTION FOR ] { ROLE role_name } [, ...] FROM { user_name } [, ...]
```

```
REVOKE { ROLE role_name } [, ...] FROM { ROLE role_name } [, ...]
```

Berikut ini adalah sintaks untuk mencabut izin sistem untuk peran di Amazon Redshift.

```
REVOKE
  {
    { CREATE USER | DROP USER | ALTER USER |
    CREATE SCHEMA | DROP SCHEMA |
    ALTER DEFAULT PRIVILEGES |
    ACCESS CATALOG |
    CREATE TABLE | DROP TABLE | ALTER TABLE |
    CREATE OR REPLACE FUNCTION | CREATE OR REPLACE EXTERNAL FUNCTION |
    DROP FUNCTION |
    CREATE OR REPLACE PROCEDURE | DROP PROCEDURE |
    CREATE OR REPLACE VIEW | DROP VIEW |
    CREATE MODEL | DROP MODEL |
    CREATE DATASHARE | ALTER DATASHARE | DROP DATASHARE |
    CREATE LIBRARY | DROP LIBRARY |
    CREATE ROLE | DROP ROLE
    TRUNCATE TABLE
    VACUUM | ANALYZE | CANCEL }[, ...]
  }
  | { ALL [ PRIVILEGES ] }
FROM { ROLE role_name } [, ...]
```

### Mencabut izin untuk kebijakan keamanan
<a name="revoke-role-level"></a>

Berikut ini adalah sintaks untuk mencabut izin untuk menjelaskan filter kebijakan keamanan kueri dalam rencana EXPLOW. Kebijakan keamanan yang mungkin termasuk kebijakan keamanan tingkat baris dan kebijakan masking data dinamis.

```
REVOKE EXPLAIN { RLS | MASKING } FROM ROLE rolename 
```

Berikut ini adalah sintaks untuk mencabut izin untuk melewati kebijakan keamanan tingkat baris untuk kueri. 

```
REVOKE IGNORE RLS FROM ROLE rolename 
```

Berikut ini adalah sintaks untuk mencabut izin SELECT dari kebijakan keamanan yang ditentukan. Kebijakan keamanan yang mungkin termasuk kebijakan keamanan tingkat baris dan kebijakan masking data dinamis.

```
REVOKE SELECT ON [ TABLE ] table_name [, ...]
            FROM { RLS | MASKING } POLICY policy_name [, ...]
```

## Parameter
<a name="r_REVOKE-parameters"></a>

OPSI HIBAH UNTUK   
Mencabut hanya opsi untuk memberikan izin tertentu kepada pengguna lain dan tidak mencabut izin itu sendiri. Anda tidak dapat mencabut OPSI GRANT dari grup atau dari PUBLIK.

SELECT   
Mencabut izin untuk memilih data dari tabel atau tampilan menggunakan pernyataan SELECT.

INSERT   
Mencabut izin untuk memuat data ke dalam tabel menggunakan pernyataan INSERT atau pernyataan COPY. 

UPDATE   
Mencabut izin untuk memperbarui kolom tabel menggunakan pernyataan UPDATE. 

DELETE   
Mencabut izin untuk menghapus baris data dari tabel.

REFERENSI   
Mencabut izin untuk membuat kendala kunci asing. Anda harus mencabut izin ini pada tabel referensi dan tabel referensi.

TRUNCATE  
Mencabut izin untuk memotong tabel. Tanpa izin ini, hanya pemilik meja atau superuser yang dapat memotong tabel. Untuk informasi selengkapnya tentang perintah TRUNCATE, lihat. [MEMOTONG](r_TRUNCATE.md)

SEMUA [HAK ISTIMEWA]   
Mencabut semua izin yang tersedia sekaligus dari pengguna atau grup yang ditentukan. Kata kunci PRIVILEGES adalah opsional.  
 Amazon Redshift tidak mendukung izin RULE dan TRIGGER. Untuk informasi selengkapnya, kunjungi [Fitur PostgreSQL yang tidak didukung](c_unsupported-postgresql-features.md). 

ALTER  
Bergantung pada objek database, mencabut izin berikut dari pengguna atau grup pengguna:   
+ Untuk tabel, ALTER mencabut izin untuk mengubah tabel atau tampilan. Untuk informasi selengkapnya, lihat [ALTER TABLE](r_ALTER_TABLE.md).
+ Untuk database, ALTER mencabut izin untuk mengubah database. Untuk informasi selengkapnya, lihat [ALTER DATABASE](r_ALTER_DATABASE.md).
+ Untuk skema, hibah ALTER mencabut untuk mengubah skema. Untuk informasi selengkapnya, lihat [ALTER SCHEMA](r_ALTER_SCHEMA.md).
+ Untuk tabel eksternal, ALTER mencabut izin untuk mengubah tabel AWS Glue Data Catalog yang diaktifkan untuk Lake Formation. Izin ini hanya berlaku saat menggunakan Lake Formation.

DROP  
Bergantung pada objek database, mencabut izin berikut dari pengguna atau peran:  
+  Untuk tabel, DROP mencabut izin untuk menjatuhkan tabel atau tampilan. Untuk informasi selengkapnya, lihat [MEJA DROP](r_DROP_TABLE.md). 
+  Untuk database, DROP mencabut izin untuk menjatuhkan database. Untuk informasi selengkapnya, lihat [DROP DATABASE](r_DROP_DATABASE.md). 
+  Untuk skema, DROP mencabut izin untuk menghapus skema. Untuk informasi selengkapnya, lihat [DROP SCHEMA](r_DROP_SCHEMA.md). 

ASSUMEROLE  <a name="assumerole"></a>
Mencabut izin untuk menjalankan perintah COPY, UNLOAD, EXTERNAL FUNCTION, atau CREATE MODEL dari pengguna, peran, atau grup dengan peran tertentu. 

ON [TABLE] *table\$1name*   
Mencabut izin yang ditentukan pada tabel atau tampilan. Kata kunci TABLE adalah opsional.

*PADA SEMUA TABEL DALAM SKEMA schema\$1name*   
Mencabut izin yang ditentukan pada semua tabel dalam skema yang direferensikan.

*(*column\$1name* [,...]) DI TABLE table\$1name*   <a name="revoke-column-level-privileges"></a>
Mencabut izin yang ditentukan dari pengguna, grup, atau PUBLIC pada kolom yang ditentukan dari tabel atau tampilan Amazon Redshift.

*(*column\$1list) PADA TABEL EKSTERNAL schema\$1name.table\$1name**   <a name="revoke-external-table-column"></a>
Mencabut izin yang ditentukan dari peran IAM pada kolom yang ditentukan dari tabel Lake Formation dalam skema yang direferensikan.

PADA TABEL EKSTERNAL *schema\$1name.table\$1name*   <a name="revoke-external-table"></a>
Mencabut izin yang ditentukan dari peran IAM pada tabel Lake Formation yang ditentukan dalam skema yang direferensikan.

*PADA SKEMA EKSTERNAL schema\$1name*   <a name="revoke-external-schema"></a>
Mencabut izin yang ditentukan dari peran IAM pada skema yang direferensikan.

*DARI IAM\$1ROLE iam\$1role*   <a name="revoke-from-iam-role"></a>
Menunjukkan peran IAM kehilangan izin.

*ROLE role\$1name*   
Mencabut izin dari peran yang ditentukan.

GROUP *group\$1name*   
Mencabut izin dari grup pengguna yang ditentukan.

UMUM   
Mencabut izin yang ditentukan dari semua pengguna. PUBLIC mewakili grup yang selalu mencakup semua pengguna. Izin pengguna individu terdiri dari jumlah izin yang diberikan kepada PUBLIK, izin yang diberikan kepada grup mana pun yang dimiliki pengguna, dan izin apa pun yang diberikan kepada pengguna secara individual.  
*Mencabut PUBLIK dari tabel eksternal Lake Formation menghasilkan pencabutan izin dari kelompok semua orang Lake Formation.*

CREATE   
Bergantung pada objek database, mencabut izin berikut dari pengguna atau grup:  
+ Untuk database, menggunakan klausa CREATE untuk REVOKE mencegah pengguna membuat skema dalam database.
+ Untuk skema, menggunakan klausa CREATE untuk REVOKE mencegah pengguna membuat objek dalam skema. Untuk mengganti nama objek, pengguna harus memiliki izin CREATE dan memiliki objek yang akan diganti namanya. 
Secara default, semua pengguna memiliki izin CREATE dan USE pada skema PUBLIC.

SEMENTARA \$1 TEMP   
Mencabut izin untuk membuat tabel sementara dalam database yang ditentukan.  
Secara default, pengguna diberikan izin untuk membuat tabel sementara dengan keanggotaan otomatis mereka di grup PUBLIC. Untuk menghapus izin bagi setiap pengguna untuk membuat tabel sementara, cabut izin TEMP dari grup PUBLIC dan kemudian secara eksplisit memberikan izin untuk membuat tabel sementara untuk pengguna atau grup pengguna tertentu.

PADA DATABASE *db\$1name*   
Mencabut izin pada database yang ditentukan.

PEMAKAIAN   
Mencabut izin PENGGUNAAN pada objek dalam skema tertentu, yang membuat objek ini tidak dapat diakses oleh pengguna. Tindakan spesifik pada objek ini harus dicabut secara terpisah (seperti izin EXECUTE pada fungsi).  
Secara default, semua pengguna memiliki izin CREATE dan USE pada skema PUBLIC.

*PADA SKEMA schema\$1name*   
Mencabut izin pada skema yang ditentukan. Anda dapat menggunakan izin skema untuk mengontrol pembuatan tabel; izin CREATE untuk database hanya mengontrol pembuatan skema.

MEMBATASI   
Hanya mencabut izin yang diberikan pengguna secara langsung. Ini adalah perilaku default .

JALANKAN PROSEDUR *prosedur\$1name*   
Mencabut izin EXECUTE pada prosedur tersimpan tertentu. Karena nama prosedur yang disimpan dapat kelebihan beban, Anda harus menyertakan daftar argumen untuk prosedur tersebut. Untuk informasi selengkapnya, lihat [Penamaan prosedur tersimpan](stored-procedure-naming.md).

*JALANKAN PADA SEMUA PROSEDUR DI SKEMA procedure RE\$1NAME*   
Mencabut izin yang ditentukan pada semua prosedur dalam skema yang direferensikan.

PENGGUNAAN PADA LANGUAGE *language\$1name*   
Mencabut izin PENGGUNAAN pada suatu bahasa. Untuk fungsi yang ditentukan pengguna Python ()UDFs, gunakan. `plpythonu` Untuk SQL UDFs, gunakan`sql`. Untuk prosedur yang disimpan, gunakan`plpgsql`.   
Untuk membuat UDF, Anda harus memiliki izin untuk penggunaan pada bahasa untuk SQL atau (`plpythonu`Python). Secara default, USAGE ON LANGUAGE SQL diberikan kepada PUBLIC. Namun, Anda harus secara eksplisit memberikan PENGGUNAAN PADA BAHASA PLPYTHONU kepada pengguna atau grup tertentu.   
Untuk mencabut penggunaan SQL, pertama-tama cabut penggunaan dari PUBLIC. Kemudian berikan penggunaan pada SQL hanya untuk pengguna atau grup tertentu yang diizinkan untuk membuat SQL UDFs. Contoh berikut mencabut penggunaan pada SQL dari PUBLIC kemudian memberikan penggunaan ke grup pengguna. `udf_devs`   

```
revoke usage on language sql from PUBLIC;
grant usage on language sql to group udf_devs;
```
Untuk informasi selengkapnya, lihat [Keamanan dan izin UDF](udf-security-and-privileges.md).   
Untuk mencabut penggunaan untuk prosedur tersimpan, pertama-tama cabut penggunaan dari PUBLIC. Kemudian berikan penggunaan `plpgsql` hanya kepada pengguna atau grup tertentu yang diizinkan untuk membuat prosedur tersimpan. Untuk informasi selengkapnya, lihat [Keamanan dan hak istimewa untuk prosedur tersimpan](stored-procedure-security-and-privileges.md). 

ON COPY JOB *job\$1name*  <a name="on-copy-job-revoke"></a>
Mencabut izin yang ditentukan pada pekerjaan penyalinan.

UNTUK \$1SEMUA \$1 SALIN \$1 BONGKAR \$1 FUNGSI EKSTERNAL \$1 BUAT MODEL\$1 [,...]  <a name="revoke-for"></a>
Menentukan perintah SQL yang izinnya dicabut. Anda dapat menentukan SEMUA untuk mencabut izin pada pernyataan COPY, UNLOAD, EXTERNAL FUNCTION, dan CREATE MODEL. Klausul ini hanya berlaku untuk mencabut izin ASSUMEROLE.

MENGUBAH  
Mencabut izin ALTER untuk pengguna atau grup pengguna yang memungkinkan mereka yang tidak memiliki datashare untuk mengubah datashare. Izin ini diperlukan untuk menambah atau menghapus objek dari datashare, atau untuk mengatur properti PUBLICACESSIBLE. Untuk informasi selengkapnya, lihat [MENGUBAH DATASHARE](r_ALTER_DATASHARE.md).

BERBAGI  
Mencabut izin bagi pengguna dan grup pengguna untuk menambahkan konsumen ke datashare. Mencabut izin ini diperlukan untuk menghentikan konsumen tertentu mengakses datashare dari klasternya. 

*DI DATASHARE datashare\$1name*  
Memberikan izin yang ditentukan pada datashare yang direferensikan.

DARI Username  
Menunjukkan pengguna kehilangan izin.

DARI GROUP *group\$1name*  
Menunjukkan grup pengguna kehilangan izin.

DENGAN OPSI HIBAH  
Menunjukkan bahwa pengguna yang kehilangan izin pada gilirannya dapat mencabut izin yang sama untuk orang lain. Anda tidak dapat mencabut WITH GRANT OPTION untuk grup atau untuk PUBLIK. 

PEMAKAIAN  
Ketika USAGE dicabut untuk akun konsumen atau namespace dalam akun yang sama, akun konsumen atau namespace yang ditentukan dalam akun tidak dapat mengakses datashare dan objek datashare dengan cara hanya-baca.   
Mencabut izin PENGGUNAAN akan mencabut akses ke datashare dari konsumen. 

DARI NAMESPACE 'clusternamespace GUID'   
Menunjukkan namespace di akun yang sama yang membuat konsumen kehilangan izin ke datashare. Ruang nama menggunakan pengidentifikasi unik global (GUID) alfanumerik 128-bit.

DARI AKUN 'accountnumber' [VIA DATA CATALOG]  
Menunjukkan nomor akun akun lain yang membuat konsumen kehilangan izin ke datashare. Menentukan 'VIA DATA CATALOG' menunjukkan bahwa Anda mencabut penggunaan datashare dari akun Lake Formation. Menghilangkan nomor akun berarti Anda mencabut dari akun yang memiliki klaster.

PADA DATABASE *shared\$1database\$1name> [*,...]   <a name="revoke-datashare"></a>
Mencabut izin penggunaan yang ditentukan pada database tertentu yang dibuat dalam datashare yang ditentukan. 

*PADA SKEMA shared\$1schema*   <a name="revoke-datashare"></a>
Mencabut izin yang ditentukan pada skema tertentu yang dibuat dalam datashare yang ditentukan.

UNTUK \$1SKEMA \$1 TABEL \$1 FUNGSI \$1 PROSEDUR \$1 BAHASA \$1 SALINAN PEKERJAAN\$1 DI   
Menentukan objek database untuk mencabut izin dari. Parameter berikut IN menentukan ruang lingkup izin yang dicabut.

BUAT MODEL  
Mencabut izin CREATE MODEL untuk membuat model pembelajaran mesin dalam database yang ditentukan.

PADA MODEL *model\$1name*  
Mencabut izin EXECUTE untuk model tertentu. 

KATALOG AKSES  
Mencabut izin untuk melihat metadata objek yang relevan yang dapat diakses oleh peran tersebut.

[OPSI ADMIN UNTUK] \$1peran\$1 [,...]  
Peran yang Anda cabut dari pengguna tertentu yang memiliki OPSI WITH ADMIN.

DARI \$1role\$1 [,...]  
Peran tempat Anda mencabut peran yang ditentukan.

*JELASKAN \$1RLS \$1 MASKING\$1 DARI ROLE rolename*  
Mencabut izin untuk menjelaskan filter kebijakan keamanan kueri dalam rencana EXPLORE dari peran. RLS mencabut izin untuk menjelaskan filter kebijakan keamanan tingkat baris. MASKING mencabut izin untuk menjelaskan filter kebijakan penyamaran data dinamis.

*ABAIKAN RLS DARI ROLEName PERAN*   
Mencabut izin untuk melewati kebijakan keamanan tingkat baris untuk kueri dari peran.

*DARI \$1RLS \$1 MASKING\$1 POLICY policy\$1name*  
Menunjukkan kebijakan keamanan kehilangan izin. KEBIJAKAN TO RLS menunjukkan kebijakan keamanan tingkat baris. KEBIJAKAN MASKING menunjukkan kebijakan penyembunyian data dinamis.

## Catatan penggunaan
<a name="r_REVOKE-usage-notes-link"></a>

Untuk mempelajari lebih lanjut tentang catatan penggunaan untuk REVOKE, lihat. [Catatan penggunaan](r_REVOKE-usage-notes.md)

## Contoh
<a name="r_REVOKE-examples-link"></a>

Untuk contoh cara menggunakan REVOKE, lihat. [Contoh](r_REVOKE-examples.md)

# Catatan penggunaan
<a name="r_REVOKE-usage-notes"></a>

Untuk mencabut hak istimewa dari suatu objek, Anda harus memenuhi salah satu kriteria berikut:
+ Jadilah pemilik objek.
+ Jadilah superuser.
+ Miliki hak istimewa hibah untuk objek dan hak istimewa itu.

  Misalnya, perintah berikut memungkinkan HR pengguna untuk melakukan perintah SELECT pada tabel karyawan dan untuk memberikan dan mencabut hak istimewa yang sama untuk pengguna lain.

  ```
  grant select on table employees to HR with grant option;
  ```

  SDM tidak dapat mencabut hak istimewa untuk operasi apa pun selain SELECT, atau pada tabel selain karyawan. 

Superuser dapat mengakses semua objek terlepas dari perintah GRANT dan REVOKE yang menetapkan hak istimewa objek.

PUBLIC mewakili grup yang selalu mencakup semua pengguna. Secara default semua anggota PUBLIC memiliki hak CREATE dan USE pada skema PUBLIC. Untuk membatasi izin pengguna pada skema PUBLIC, Anda harus terlebih dahulu mencabut semua izin dari PUBLIC pada skema PUBLIK, lalu memberikan hak istimewa kepada pengguna atau grup tertentu. Contoh berikut mengontrol hak istimewa pembuatan tabel dalam skema PUBLIC.

```
revoke create on schema public from public;
```

Untuk mencabut hak istimewa dari tabel Lake Formation, peran IAM yang terkait dengan skema eksternal tabel harus memiliki izin untuk mencabut hak istimewa ke tabel eksternal. Contoh berikut membuat skema eksternal dengan peran IAM terkait. `myGrantor` Peran IAM `myGrantor` memiliki izin untuk mencabut izin dari orang lain. Perintah REVOKE menggunakan izin peran IAM `myGrantor` yang terkait dengan skema eksternal untuk mencabut izin ke peran IAM. `myGrantee`

```
create external schema mySchema
from data catalog
database 'spectrum_db'
iam_role 'arn:aws:iam::123456789012:role/myGrantor'
create external database if not exists;
```

```
revoke select
on external table mySchema.mytable
from iam_role 'arn:aws:iam::123456789012:role/myGrantee';
```

**catatan**  
Jika peran IAM juga memiliki `ALL` izin dalam AWS Glue Data Catalog yang diaktifkan untuk Lake Formation, `ALL` izin tersebut tidak dicabut. Hanya `SELECT` izin yang dicabut. Anda dapat melihat izin Lake Formation di konsol Lake Formation.

## Catatan penggunaan untuk mencabut izin ASSUMEROLE
<a name="r_REVOKE-usage-notes-assumerole"></a>

Catatan penggunaan berikut berlaku untuk mencabut hak istimewa ASSUMEROLE di Amazon Redshift. 

Hanya superuser database yang dapat mencabut hak istimewa ASSUMEROLE untuk pengguna dan grup. Seorang superuser selalu mempertahankan hak istimewa ASSUMEROLE. 

Untuk mengaktifkan penggunaan hak istimewa ASSUMEROLE bagi pengguna dan grup, superuser menjalankan pernyataan berikut sekali di cluster. Sebelum memberikan hak istimewa ASSUMEROLE kepada pengguna dan grup, pengguna super harus menjalankan pernyataan berikut sekali di cluster. 

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

## Catatan penggunaan untuk mencabut izin pembelajaran mesin
<a name="r_REVOKE-usage-notes-create-model"></a>

Anda tidak dapat secara langsung memberikan atau mencabut izin yang terkait dengan fungsi ML. Fungsi ML milik model ML dan izin dikontrol melalui model. Sebagai gantinya, Anda dapat mencabut izin yang terkait dengan model ML. Contoh berikut menunjukkan cara mencabut permisison run dari semua pengguna yang terkait dengan model. `customer_churn`

```
REVOKE EXECUTE ON MODEL customer_churn FROM PUBLIC;
```

Anda juga dapat mencabut semua izin dari pengguna untuk model ML. `customer_churn`

```
REVOKE ALL on MODEL customer_churn FROM ml_user;
```

Pemberian atau pencabutan `EXECUTE` izin yang terkait dengan fungsi ML akan gagal jika ada fungsi ML dalam skema, bahkan jika fungsi ML tersebut sudah memiliki izin melalui. `EXECUTE` `GRANT EXECUTE ON MODEL` Sebaiknya gunakan skema terpisah saat menggunakan `CREATE MODEL` perintah untuk menjaga fungsi ML dalam skema terpisah sendiri. Contoh berikut menunjukkan bagaimana melakukannya.

```
CREATE MODEL ml_schema.customer_churn
FROM customer_data
TARGET churn
FUNCTION ml_schema.customer_churn_prediction
IAM_ROLE default
SETTINGS (
 S3_BUCKET 'amzn-s3-demo-bucket'
);
```

# Contoh
<a name="r_REVOKE-examples"></a>

Contoh berikut mencabut hak istimewa INSERT pada tabel PENJUALAN dari grup pengguna TAMU. Perintah ini mencegah anggota GUEST untuk dapat memuat data ke dalam tabel PENJUALAN dengan menggunakan perintah INSERT. 

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

Contoh berikut mencabut hak istimewa SELECT pada semua tabel dalam skema QA\$1TICKIT dari pengguna. `fred`

```
revoke select on all tables in schema qa_tickit from fred;
```

Contoh berikut mencabut hak istimewa untuk memilih dari tampilan untuk pengguna. `bobr`

```
revoke select on table eventview from bobr;
```

Contoh berikut mencabut hak istimewa untuk membuat tabel sementara dalam database TICKIT dari semua pengguna.

```
revoke temporary on database tickit from public;
```

Contoh berikut mencabut hak istimewa SELECT pada `cust_name` dan `cust_phone` kolom `cust_profile` tabel dari pengguna. `user1` 

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

Contoh berikut mencabut hak istimewa SELECT pada `cust_phone` kolom `cust_name` dan hak istimewa UPDATE pada `cust_contact_preference` kolom `cust_profile` tabel dari grup. `sales_group` 

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

Contoh berikut menunjukkan penggunaan kata kunci ALL untuk mencabut hak pilih dan UPDATE pada tiga kolom tabel `cust_profile` dari grup. `sales_admin` 

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

Contoh berikut mencabut hak istimewa SELECT pada `cust_name` kolom `cust_profile_vw` tampilan dari pengguna. `user2` 

```
revoke select(cust_name) on cust_profile_vw from user2;
```

## Contoh pencabutan izin PENGGUNAAN dari database yang dibuat dari datashares
<a name="r_REVOKE-examples-datashare"></a>

Contoh berikut mencabut akses ke `salesshare` datashare dari dari namespace. `13b8833d-17c6-4f16-8fe4-1a018f5ed00d`

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

Contoh berikut mencabut izin PENGGUNAAN pada `sales_db` from`Bob`.

```
REVOKE USAGE ON DATABASE sales_db FROM Bob;
```

Contoh berikut MENCABUT izin PENGGUNAAN `sales_schema` dari. `Analyst_role`

```
REVOKE USAGE ON SCHEMA sales_schema FROM ROLE Analyst_role;
```

## Contoh pencabutan izin cakupan
<a name="r_REVOKE-examples-scoped"></a>

Contoh berikut mencabut penggunaan untuk semua skema saat ini dan masa depan dalam `Sales_db` database dari peran. `Sales`

```
REVOKE USAGE FOR SCHEMAS IN DATABASE Sales_db FROM ROLE Sales;
```

Contoh berikut mencabut kemampuan untuk memberikan izin SELECT untuk semua tabel saat ini dan masa depan dalam `Sales_db` database dari pengguna`alice`. `alice`mempertahankan akses ke semua tabel di`Sales_db`.

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

Contoh berikut mencabut izin EXECUTE untuk fungsi dalam `Sales_schema` skema dari pengguna. `bob`

```
REVOKE EXECUTE FOR FUNCTIONS IN SCHEMA Sales_schema FROM bob;
```

Contoh berikut mencabut semua izin untuk semua tabel dalam `ShareSchema` skema `ShareDb` database dari peran. `Sales` Saat menentukan skema, Anda juga dapat menentukan database skema menggunakan format dua bagian. `database.schema`

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

Contoh berikut ini sama dengan yang sebelumnya. Anda dapat menentukan database skema menggunakan `DATABASE` kata kunci alih-alih menggunakan format dua bagian.

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

## Contoh pencabutan hak istimewa ASSUMEROLE
<a name="r_REVOKE-examples-assumerole"></a>

Berikut ini adalah contoh pencabutan hak istimewa ASSUMEROLE. 

Superuser harus mengaktifkan penggunaan hak istimewa ASSUMEROLE untuk pengguna dan grup dengan menjalankan pernyataan berikut sekali di cluster: 

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

Pernyataan berikut mencabut hak istimewa ASSUMEROLE dari pengguna reg\$1user1 pada semua peran untuk semua operasi. 

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

## Contoh pencabutan hak istimewa PERAN
<a name="r_REVOKE-examples-role"></a>

Contoh berikut mencabut sample\$1role1 dari sample\$1role2.

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

Contoh berikut mencabut hak istimewa sistem dari user1.

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

Contoh berikut mencabut sample\$1role1 dan sample\$1role2 dari user1.

```
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;
```

Contoh berikut mencabut sample\$1role2 dengan ADMIN OPTION dari user1.

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

Contoh berikut mencabut sample\$1role1 dan sample\$1role2 dari sample\$1role5.

```
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;
```

Contoh berikut mencabut hak istimewa sistem CREATE SCHEMA dan DROP SCHEMA ke sample\$1role1.

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