権限付与の例 - Advanced SQL Engine - Teradata Database

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

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Published
2021年7月
Language
日本語
Last Update
2021-09-23
dita:mapPath
ja-JP/sqd1591723147563.ditamap
dita:ditavalPath
ja-JP/wrg1590696035526.ditaval
dita:id
B035-1149
Product Category
Software
Teradata Vantage

ユーザー グループへの権限付与の例

次のリクエストは、ユーザー グループに権限を与えます。この例では、financeというデータベースの下に作成されたすべてのユーザーに、departmentデータベースの下にあるpersonnelテーブルからデータをSELECTする権限を与えます。

GRANT SELECT
ON personnel.department
TO ALL finance;

任意のオブジェクトに対するSELECTの付与の例

次の文で、ユーザーMoffitは、personnelデータベースのすべてのオブジェクトから情報を検索できるようになります。

GRANT SELECT
ON personnel
TO moffit;

テーブルの列に対するSELECTの付与の例

この例では、personnelデータベースにあるdepartmentという名前のテーブルのcolumn_1のみに対するSELECT権限を、ユーザーMoffitに付与します。

GRANT SELECT (column_1)
ON personnel.department
TO moffit;

任意のオブジェクトに対するSELECT、INSERT、UPDATE、およびDELETEの付与の例

次の文で、ユーザーPetersonは、personnelデータベース内のすべてのオブジェクトに対する選択、挿入、更新、および削除が実行できるようになります。

GRANT SELECT, INSERT, UPDATE, DELETE
ON personnel
TO peterson;

データベースに対するUSER権限の付与の例

次の文を使用すると、ユーザーPhanpersonnelデータベース領域内でユーザーを作成できますが、自身が作成するものを除いてpersonnelデータベース内のユーザーを削除または変更することはできません。

GRANT USER
ON personnel
TO phan;

トリガーに関連した権限付与の例

次のリクエストは、データベースTrigUser内の任意のテーブルに対するCREATE TRIGGERおよびDROP TRIGGER権限をユーザーTrigDBに付与します。

GRANT CREATE TRIGGER, DROP TRIGGER
ON TrigDB
TO TrigUser;

次のリクエストは、対象となる TrigDBに対するCREATE TRIGGERおよびDROP TRIGGER権限をユーザーTrigUserに付与します

GRANT CREATE TRIGGER, DROP TRIGGER
ON TrigTable
TO TrigUser;

CREATE TRIGGERとDROP TRIGGERの両方を意味する短縮形のTRIGGERを使用して、前のリクエストと同じ権限を付与することもできます。

例えば、次のようになります。

GRANT TRIGGER
ON TrigDB TO TrigUser;

GRANT TRIGGER
ON TrigTable
TO TrigUser;

外部関数に対する権限付与の例

以下のGRANTリクエストは、それぞれ以下の権限を付与します。
  • 特定の外部関数find_textに対するALTER FUNCTIONをユーザーuser_dbauser_in_houseに付与。
  • SYSLIBデータベース内のすべての外部UDFに対するALTER FUNCTIONをuser_dbaに付与。
  • データベースdocument_dbに対するCREATE FUNCTIONをuser_dbaに付与。
  • オーバーロード関数text_processに対するEXECUTE FUNCTIONをユーザーsammyに付与。
GRANT ALTER FUNCTION
ON SPECIFIC FUNCTION find_text
TO user_dba, user_in_house;

GRANT ALTER FUNCTION
ON syslib
TO user_dba;

GRANT CREATE FUNCTION
ON document_db
TO user_dba, user_in_house;

GRANT EXECUTE
ON FUNCTION text_process(CHAR,CHAR,INTEGER)
TO sammy;