権限を付与した後、ユーザーの権限を取り消すことができます。
前提条件
対象の権限を取り消す際、現在のユーザーは取り消される権限を保有していなければなりません(例えば、
test1がテーブルt1に対するtest2のSELECT権限を取り消す場合、test1はテーブルt1のSELECT権限を保有していなければなりません)。また、GRANT OPTION権限、またはGRANT ANY OBJECT PRIVILEGE権限を保有している必要があります。システム権限またはロールを取り消す際、現在のユーザーは取り消される権限またはロールを保有していなければならず、
GRANT OPTION権限、またはGRANT ANY PRIVILEGE権限またはGRANT ANY ROLE権限を保有している必要があります。ALL PRIVILEGESおよびGRANT OPTION権限を取り消す場合、現在のユーザーはグローバルGRANT OPTION権限、または権限テーブルに対するUPDATEおよびDELETE権限を保有していなければなりません。
現在保有している権限を確認するには、ユーザー権限の確認を参照してください。必要な権限がない場合は、管理者に連絡して追加してもらってください。
注意事項
あるユーザーから複数の権限を同時に取り消す場合、権限タイプは英語のカンマ(,)で区切ります。
複数のユーザーの権限を同時に取り消す場合、ユーザー名は英語のカンマ(,)で区切ります。
ユーザーに権限を付与する際、その権限に
GRANT OPTIONが指定されていない場合、取り消し操作はカスケードされません。例えば、ユーザーtest1がtest2に特定の権限を付与した場合、test1の権限を取り消してもtest2の対応する権限は同時に取り消されません。
操作例
システム権限の取り消し
ユーザー
testのシステム権限CREATE SEQUENCEを取り消します。obclient> REVOKE CREATE SEQUENCE FROM test;オブジェクト権限の取り消し
ユーザー
testのビューemp_viewに対するオブジェクト権限SELECT権限とUPDATE権限を取り消します。obclient> REVOKE ALL PRIVILEGES FROM user_name;
REVOKEステートメントの詳細については、REVOKEを参照してください。