REVOKE (ロール形式) - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ制御言語

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
2020年6月
Language
日本語
Last Update
2021-03-30
dita:mapPath
ja-JP/lmb1556233084626.ditamap
dita:ditavalPath
ja-JP/lmb1556233084626.ditaval
dita:id
B035-1149
Product Category
Software
Teradata Vantage

ユーザーまたは他のロールからロールを取り消します。

必要な権限

ロールを取り消すには、それに対するWITH ADMIN OPTION権限が必要です。以下のユーザーが、ロールのメンバーシップを取り消せます。
  • ユーザーDBC
  • WITH ADMIN OPTION付きの指定されたロールを付与されたユーザー。

    ロールは、WITH ADMIN OPTION付きのロールの作成者に自動的に付与されます。

  • WITH ADMIN OPTION付きで指定されたロールが与えられたアクティブ ロールを持つユーザー。アクティブ ロールは、現在のロールか、現在のロールの入れ子ロールのいずれかです。

構文

REVOKE [ ADMIN OPTION FOR ] role_name [,...]
  { TO | FROM } { user_name | role_name } [,...] [;]

構文要素

ADMIN OPTION FOR
このロールを付与されたロールまたはユーザーが、GRANT、REVOKE、およびDROP ROLE文を使用して、指定されたロールを管理する権限を失うことを示します。
REVOKEリクエストにADMIN OPTION FORを指定しない場合、システムは指定されたロールを、そのロールが付与されたロールまたはユーザーから取り消します。
role_name
1つまたは複数のカンマで区切られた、取り消すロールの名前を指定します。
REVOKEリクエストにつき最大25個の名前を指定できます。
システムでは重複したロール名は無視されます。
TO
FROM
user_name
role_name
ロールもしくはロールを管理する能力が取り消されているロール、またはユーザー、あるいはその両方の名前を指定します。
システムでは、指定されたロールを付与されていないユーザーまたはロールについては、エラーは返されません。
TOキーワードは、ANSI/ISO SQL:2011に対するTeradataの拡張機能です。

1つのロールを取り消して別のロールに付与する例

ユーザーmarksがsalesからmanagementへ昇進した場合、データベース管理者は次の文を使用して、salesロールを取り消してmanagementロールを付与できます。

REVOKE sales
FROM marks;
     
GRANT management
TO marks;

ロールを取り消した場合の影響

ロールは、データベース オブジェクトに対する権限を定義します。ロールを活動化するユーザーは、ロールと入れ子ロールのすべての権限を継承します。ユーザーは、自身に付与されているロールだけを活動化することができます。

ユーザーは、組織内でのロールを変更されることがあります。ロールが権限を持っているオブジェクトにユーザーがアクセスする必要がなくなった場合は、管理者がロールを取り消せます。ロールが権限を持っているオブジェクトにユーザーがアクセスする必要がなくなった場合は、管理者がロールを取り消せます。

許可されたユーザーは、ロールの作成者からロールに対するWITH ADMIN OPTION権限を取り消せます。

ロール取り消しはすぐに有効になります。現在のロールまたは現在のロールの入れ子ロールとして、取り消されたロールを使用してログオンするユーザーは、そのロールで定義されている権限を失います。

取り消されたロールがデフォルト ロールとして設定されているユーザーは、次回のログオン時にエラーや警告を受け取りません。しかし、システムでは、権限の評価に、廃止されたデフォルト ロールを使用しません。ロールが再びユーザーに付与されると、ユーザーが次回ログオンする際に、再びデフォルト ロールが現在のロールになります。