権限を付与した後、ユーザーの権限を取り消すことができます。
前提条件
現在のユーザーは、取り消す権限を持っている必要があります(例えば、
test1がtest2のテーブルt1に対するSELECT権限を取り消す場合、test1はテーブルt1に対するSELECT権限を持っている必要があります)。また、GRANT OPTION権限も持っている必要があります。ALL PRIVILEGESおよびGRANT OPTION権限を取り消す場合、現在のユーザーはグローバルなGRANT OPTION権限、または権限テーブルに対するUPDATEおよびDELETE権限を持っている必要があります。
注意事項
特定のユーザーから複数の権限を同時に取り消す場合、権限タイプを半角カンマ(,)で区切ります。
複数のユーザーの権限を同時に取り消す場合、ユーザー名を半角カンマ(,)で区切ります。
取り消し操作は連鎖しません。例えば、ユーザー
test1がtest2に特定の権限を付与した場合、test1の権限を取り消しても、test2の対応する権限は自動的に取り消されません。
操作例
グローバル権限の取り消し
ユーザー
testがすべてのデータベース内のすべてのテーブルに対するINSERT、SELECT権限を取り消します。obclient> REVOKE SELECT, INSERT ON *.* FROM 'test';データベースレベル権限の取り消し
ユーザー
testがデータベースdb1内のすべてのテーブルに対するINSERT、SELECT権限を取り消します。obclient> REVOKE SELECT, INSERT ON db1 FROM 'test';テーブルレベル権限の取り消し
ユーザー
testがデータベースdb1のテーブルtb1_nameに対するINSERT、SELECT権限を取り消します。obclient> REVOKE SELECT, INSERT ON db1.tb1_name FROM 'test';テーブル内の列権限の取り消し
ユーザー
testがデータベースdb1のテーブルtb1_nameの列c1に対するSELECT権限、および列c1とc2に対するINSERT権限を取り消します。obclient> REVOKE SELECT(c1), INSERT (c1, c2) ON db1.tb1_name FROM test;
REVOKE ステートメントの詳細については、REVOKEを参照してください。