必要な権限
システム権限を削除するには、ADMINが必要です。
オブジェクト権限を削除するには、ADMINが必要です。または、オブジェクト所有者である必要があります。
SQL構文
REVOKE {SystemPrivilege [ , … ] | ALL [PRIVILEGES]} FROM {user |PUBLIC} [,...] REVOKE {{ObjectPrivilege [,...] | ALL [PRIVILEGES]} ON {[owner.object}} [,...] FROM {user | PUBLIC}[,...]
パラメータ
システム権限の削除:
パラメータ | 説明 |
---|---|
SystemPrivilege |
使用できる値のリストについては、「システム権限」を参照してください。 |
ALL [PRIVILEGES] |
ユーザーからすべてのシステム権限を削除します。 |
user |
権限が削除されるユーザーの名前。ユーザー名は、CREATE USER文を使用してTimesTenデータベースに設定しておく必要があります。 |
PUBLIC |
すべてのユーザーの権限を削除することを指定します。 |
オブジェクト権限の削除:
パラメータ | 説明 |
---|---|
ObjectPrivilege |
使用できる値のリストについては、「オブジェクト権限」を参照してください。 |
ALL [PRIVILEGES] |
ユーザーからすべてのオブジェクト権限を削除します。 |
user |
権限が削除されるユーザーの名前。 ユーザー名は、CREATE USER文を使用してTimesTenデータベースに設定しておく必要があります。 |
[ owner .] object |
object は権限を削除するオブジェクトの名前です。owner はそのオブジェクトの所有者です。 owner を指定しないと、権限を削除しているユーザーが所有者とみなされます。 |
PUBLIC |
すべてのユーザーの権限を削除することを指定します。 |
オブジェクトの所有者から、そのオブジェクトの権限を削除することはできません。
権限を付与できるユーザーは、自分以外のユーザーが付与した場合でもその権限を削除できます。
権限は、付与されたときと同じレベルで削除する必要があります。 ユーザーからオブジェクト権限を削除する場合、関連するシステム権限が付与されているユーザーからは削除できません。 たとえば、あるユーザーにSELECT ANY TABLEを付与し、その後SELECT ON bob.table1
を削除しようとすると、SELECT ANY TABLEに加えてSELECT ON bob.table1
を明示的に付与していない場合は失敗します。
ユーザーにすべてのシステム権限が付与されている場合は、特定の権限を削除できます。 たとえば、すべてのシステム権限が付与されているユーザーからALTER ANY TABLEを削除できます。
すべてのオブジェクト権限が付与されているユーザーからは、特定のオブジェクトの特定の権限を削除できます。 たとえば、ユーザーterry
にすべてのオブジェクト権限が付与されている場合でも、表customers
に対するDELETE権限をterry
から削除できます。
ユーザーにすべての権限が付与されていない場合でも、そのユーザーからすべての権限を削除できます。
特定の権限を、その権限を付与されていないユーザーから削除することはできません。
ユーザーが所有するオブジェクトに対する権限は削除できません。
システム権限とオブジェクト権限を1つの文で削除することはできません。
オブジェクト権限の文に指定できるオブジェクトの数は1つのみです。
例
ユーザーterry
からADMIN権限を削除します。
REVOKE admin, ddl FROM terry;
ADMIN権限を持っている権限削除者が、pat
が所有するcustomers
表に対するUPDATE権限をterry
から削除します。
REVOKE update ON pat.customers FROM terry;
関連項目