付与権限の制限 - 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

他のユーザー、データベース、ロール、またはPUBLICに対して権限を明示的に与える場合、その要求された権限が、与えられるか、どのように与えられるのか、およびどのオブジェクトに対して与えることができるのかを決めるルールがあります。明示的に付与される権限に対する制限について、次のテーブルで詳しく説明します。

このテーブルの最初の列では権限のタイプを示し、2番目の列ではその権限をデータベース、ユーザー、ロール、またはPUBLICに付与するときの制限を説明し、3番目の列ではテーブル、ビュー、関数、関数マッピング、プロシージャ、メソッド、UDT、またはマクロに付与するときの制限を説明しています。

権限 オブジェクト(データベース、ユーザー、ロール、PUBLIC) テーブル、ビュー、関数、関数マッピング、GLOP、メソッド、UDT、プロシージャ、制約、またはマクロ
ALL 付与者がオブジェクトに対して付与できるすべての権限。
  • SYSUDTLIBデータベースに対するUDTMETHOD権限の付与。

    WITH GRANT OPTION付きで付与された場合、権限を与えられるユーザーは他のユーザーにUDTMETHOD、UDTTYPE、およびUDTUSAGEを付与でき、任意にWITH GRANT OPTION付きで付与することも可能です。

以下は、付与者が権限を所有している場合にのみ適用されます。
  • マクロに対するEXECUTEとDROPの付与。
  • データのテーブルに対するDROP、DELETE、INDEX、INSERT、REFERENCES、SELECT、UPDATE、RESTORE、CREATE TRIGGER、DROP TRIGGER、およびDUMPの付与。
  • ハッシュ インデックスと結合インデックスに対するDROPの付与。
  • ビューに対するDROP、DELETE、INSERT、SELECT、およびUPDATEの付与。
  • ジャーナル テーブルに対するINSERT、DUMP、RESTORE、およびCHECKPOINTの付与。
  • プロシージャに対するALTER PROCEDURE、DROP PROCEDURE、およびEXECUTE PROCEDURE権限の付与。
  • 指定されたUDFに対するALTER FUNCTION、DROP FUNCTION、およびEXECUTE FUNCTION権限の付与。
  • ユーザーへのCREATE GLOP、GLOP、およびDROP GLOPの付与。
  • 指定したユーザーまたはデータベースへのGLOP MEMBERの付与。
  • 指定したユーザー、データベースまたは表へのNONTEMPORALの付与。

    詳細については、<Teradata Vantage™ - テンポラル テーブル サポート、B035-1182>を参照してください。

ALTER FUNCTION

ALTER PROCEDURE

指定された領域内のすべての外部UDFまたは内部プロシージャに適用される権限。

ALTER FUNCTIONはUDFに対して無効です。

指定された外部UDFまたはプロシージャに適用される権限。

ALTER FUNCTIONはUDFに対して無効です。

ALTER EXTERNAL PROCEDURE 指定された領域内のすべての外部プロシージャに適用される権限。 指定された外部プロシージャに適用される権限。
CHECKPOINT 指定したデータベース内のジャーナル テーブルに適用される権限。 指定したジャーナル テーブルに適用される権限。
CONSTRAINT ASSIGNMENT   WITH GRANT OPTIONが指定されたユーザーDBCに付与されるシステム レベルの権限。DBCはこの権限を、システム用に定義された他の任意のユーザーまたはロールに付与できます。
CONSTRAINT ASSIGNMENTは、プロファイル、テーブルおよびユーザーに関する制約割り当てを保守するために使用される以下のSQL文に適用されます。
  • ALTER TABLE
  • CREATE PROFILE
  • CREATE TABLE
  • CREATE USER
  • MODIFY PROFILE
  • MODIFY USER
  • SHOW CONSTRAINT
CONSTRAINT DEFINITION   WITH GRANT OPTIONが指定されたユーザーDBCに付与されるシステム レベルの権限。DBCはこの権限を、システム用に定義された他の任意のユーザーまたはロールに付与できます。
CONSTRAINT DEFINITIONは、以下のSQL文を実行する際に適用されます。
  • ALTER CONSTRAINT
  • CREATE CONSTRAINT
  • DROP CONSTRAINT
CREATE DATABASE

CREATE USER

指定した領域に対するCREATE権限。 適用なし。
CREATE DATASET SCHEMA SYSUDTLIBデータベースに対するCREATE DATASET SCHEMAの付与。

WITH GRANT OPTIONが指定されたユーザーDBCに付与されるデータベース レベルの権限。

DBCは、作成される他のユーザーまたはデータベースに対してWITH GRANT OPTIONを使用して、または使用せずに明示的に付与する必要がある。DBCは、作成されるロールに対してWITH GRANT OPTIONを使用せずに明示的に付与する必要がある。

適用なし。
  • CREATE EXTERNAL PROCEDURE
  • CREATE FUNCTION
  • CREATE MACRO
  • CREATE PROCEDURE
  • CREATE TABLE
  • CREATE VIEW
指定した領域のオブジェクトに対してCREATE権限。 適用なし。
CREATE GLOP 指定したユーザーに対するCREATE権限。

この権限は、ユーザーまたはデータベースの作成時に、自動的には付与されない。

  • CREATE MAP
  • CREATE PROFILE
  • CREATE ROLE
  • CREATE ZONE
ユーザーに対してのみ付与できる。オブジェクトに付与することはできない。 ユーザーに対してのみ付与できる。オブジェクトに付与することはできない。
CREATE TRIGGER 指定した領域のオブジェクトに対してCREATE権限。 指定したテーブルに対するCREATE権限。
CTCONTROL 総合的なシステム権限であり、特定のテーブルまたはデータベースに対しては付与または取り消しされない権限。

CTCONTROL権限は、ユーザーに対してのみ付与できる。

ユーザーDBCは、WITH GRANT OPTIONで他のどのユーザーにでもCTCONTROL権限を付与できる。

  • DATABASE
  • FUNCTION
  • GLOP
  • INDEX
  • MACRO
  • MAP
  • PROCEDURE
  • PROFILE
  • ROLE
  • TABLE
  • TRIGGER
  • USER
  • VIEW
  • ZONE
指定した領域の指定した種類に対するCREATEおよびDROP権限。

CREATE MAPおよびDROP MAPは、ユーザーまたはロールにのみ付与できるシステム レベルの権限です。CREATE MAPおよびDROP MAPをオブジェクトまたはPUBLICに付与することはできません。

CREATE PROFILE、DROP PROFILE、CREATE ROLE、DROP ROLE、CREATE ZONE、DROP ZONEは、ユーザーに対してのみ付与できる。オブジェクトに付与することはできない。

適用なし。

TRIGGERは、トリガーが定義されているテーブルに適用される。

DELETE

INSERT

SELECT

UPDATE

指定したデータベース内のすべてのテーブルまたはビューに適用される権限。

UPDATE、INSERTおよびSELECTは、テーブル、またはそのテーブルの列セットに適用される。

ビューに対して与えられた権限を受領者が使用するために、ビューの直接所有者は、そのビューによって参照されるテーブルおよびビューに対する適切な権限を持っている必要がある。

指定されたテーブル、ビューまたは列にだけ適用される権限。

GENERATED ALWAYSの識別列に対するUPDATEは付与できない。

ビューに対して与えられた権限を受領者が使用するために、ビューの直接所有者は、そのビューによって参照されるテーブルおよびビューに対する適切な権限を持っている必要がある。

DROP 適用なし。 指定した以下のものに対するDROP権限。
  • プロシージャ。PROCEDUREをプロシージャ名の前に、または指定した関数に対して指定する場合。
  • 関数。FUNCTIONまたはSPECIFIC FUNCTIONを関数名の前に指定する場合。
DROP DATABASE

DROP USER

指定した領域に対するDROP権限。 適用なし。
DROP DATASET SCHEMA SYSUDTLIBデータベースに対するDROP DATASET SCHEMAの付与。

WITH GRANT OPTIONが指定されたユーザーDBCに付与されるデータベース レベルまたはスキーマ レベルの権限。

DBCは、作成される他のユーザーまたはデータベースに対してWITH GRANT OPTIONを使用して、または使用せずに明示的に付与する必要がある。DBCは、作成されるロールに対してWITH GRANT OPTIONを使用せずに明示的に付与する必要がある。

作成したスキーマでGRANT OPTIONを使用すると、スキーマの作成者にこの権限が自動的に付与される。

スキーマの削除は、スキーマが使用されていない場合にのみ許可されます。

適用なし。
  • DROP FUNCTION
  • DROP MACRO
  • DROP PROCEDURE
  • DROP TABLE
  • DROP TRIGGER
  • DROP VIEW
指定した領域のオブジェクトに対してDROP権限。

指定されたUDF、関数マッピング、マクロ、プロシージャ、テーブル、またはビューに対するDROP権限。

DROP TRIGGERは、トリガーが定義されているテーブルに適用される。

DROP GLOP 指定のユーザーまたはデータベースに指定したGLOPセットに対するDROP権限。

この権限は、ユーザーまたはデータベースの作成時に、自動的には付与されない。

この権限は、GLOPセットの作成者および所有者に、自動的に付与される。

DROP MAP

DROP PROFILE

DROP ROLE

DROP ZONE

ユーザーに対してのみ付与できる。オブジェクトに付与することはできない。 ユーザーに対してのみ付与できる。オブジェクトに付与することはできない。
DUMP

RESTORE

指定したデータベース内のすべてのテーブルに適用される権限。 指定したデータ テーブルまたはジャーナル テーブルにだけ適用される権限。
EXECUTE 指定されたデータベース内のすべてのUDFまたはマクロに適用される権限。

UDFまたはマクロに対する権限を受領者が使用するために、マクロまたはUDFの直接所有者は、そのマクロまたはUDFによって参照されるオブジェクトに対して適切な権限を持っている必要がある。

キーワードFUNCTION、SPECIFIC FUNCTION、またはPROCEDUREが指定されていない場合、権限は、指定したマクロに適用される。

UDFまたはマクロに対する権限を受領者が使用するために、マクロの直接所有者は、そのマクロによって参照されるオブジェクトに対して適切な権限を持っている必要がある。

キーワードFUNCTION、SPECIFIC FUNCTION、またはPROCEDUREが指定されている場合、権限は指定されたUDFまたはプロシージャに適用される。

受領者がSCRIPTテーブル演算子を使用するには、スクリプト クエリーを実行するデータベース ユーザーに次の権限が必要となる。
  • 使用を有効にするための、TD_SYSFNLIB.SCRIPTでのEXECUTE FUNCTION権限。
  • 適切なOSユーザーにバインドするためのEXECUTE権限。SYSUIF.DEFAULT_AUTHは、EXECUTE権限の許可オブジェクト ターゲットとして提供されます。
EXECUTE FUNCTION

EXECUTE PROCEDURE

指定された領域内のすべてのUDFまたはプロシージャに適用される権限。

プロシージャに対する権限を受領者が使用するために、プロシージャの直接所有者は、そのプロシージャが参照するオブジェクトに対して適切な権限を持っている必要がある。

指定されたUDF、関数マッピング、またはプロシージャに適用される権限。

プロシージャに対する権限を受領者が使用するために、プロシージャの直接所有者は、そのプロシージャが参照するオブジェクトに対して適切な権限を持っている必要がある。

GLOP MEMBER 外部ルーチンが、定義内のMEMBER OF GLOP SET句で指定したGLOPセットにアクセスできるようにする権限(そのGLOPセットが、外部ルーチンを含むユーザーまたはデータベース内に含まれていない場合)。

この権限は、ユーザーまたはデータベースの作成時に、自動的には付与されない。

INDEX 適用なし。 テーブル、ハッシュ インデックス、および結合インデックスに適用される権限。
NONTEMPORAL テーブル、データベース、またはユーザーに適用する権限。

この権限は自動的には付与されません。また、ユーザーDBC、あるいはWITH GRANT OPTION権限がすでに付与されているユーザーによって、明示的に付与される必要があります。

詳細については、<Teradata Vantage™ - テンポラル テーブル サポート、B035-1182>を参照してください。

テーブル レベルで付与される権限。

詳細については、<Teradata Vantage™ - テンポラル テーブル サポート、B035-1182>を参照してください。

  • OVERRIDE DELETE CONSTRAINT
  • OVERRIDE INSERT CONSTRAINT
  • OVERRIDE SELECT CONSTRAINT
  • OVERRIDE UPDATE CONSTRAINT
  テーブル、データベース、列またはユーザーに付与できるオブジェクト レベルの権限。

行レベル セキュリティ関数が文アクション タイプ用に作成されていない場合、そのタイプの文は、その文を実行するために必要な上書き権限を持っているユーザーだけが実行できます。

ユーザーが上書き権限を持っている場合、リクエストでは宛先行の制約列に割り当てられる値を指定する必要があります。

これらの権限を付与するには、CONSTRAINT ASSIGNMENT権限が必要です。
  • オブジェクトがテーブルである場合は、そのすべての制約列でOVERRIDE権限が付与されます。
  • オブジェクトがデータベースやユーザーである場合は、そのデータベースまたはユーザー内に含まれるすべてのテーブルのすべての制約列に対してOVERRIDE権限が付与されます。

これらの権限を指定するGRANTリクエストでは、権限が付与されるCONSTRAINTオブジェクトも指定する必要があります。

OVERRIDE DUMP CONSTRAINT

OVERRIDE RESTORE CONSTRAINT

OVERRIDE DUMP CONSTRAINTとOVERRIDE RESTORE CONSTRAINTは、ユーザーとロールにのみ付与できます。 ユーザーやロールに付与できるオブジェクト レベルの権限。
これらの権限を付与するには、CONSTRAINT ASSIGNMENT権限が必要です。
  • オブジェクトが表である場合、少なくとも1つの行レベル セキュリティ制約がそれと共に定義されている必要があります。
  • オブジェクトがユーザーである場合、1つ以上の行レベル セキュリティ制約を持つ表が少なくとも1つ含まれている必要があります。
    データベースに、1つ以上の行レベル セキュリティ制約を持つテーブルが含まれている必要はありません。
REFERENCES 適用なし。 テーブルまたはテーブルの列に対して適用される権限。
SHOW 適用なし。 テーブル、ハッシュ インデックス、結合インデックスまたはデータベースに対して適用される権限。

受領者が権限を付与されたデータベース オブジェクトに対して、HELPまたはSHOWリクエスト以外のあらゆる操作を実行する能力が許可されない権限。

STATISTICS 適用なし。 テーブル、ハッシュ インデックス、結合インデックス、またはデータベースに関する統計を収集するための権限。
UDTMETHOD SYSUDTLIBデータベースに対してのみ付与できます。

SYSUDTLIBデータベース内に含まれるすべてのUDT、メソッド、およびUDFに適用される権限。

実質的には、SYSUDTLIBデータベース内に含まれるすべてのUDTに対してUDTUSAGEを付与し、SYSUDTLIBデータベースに対してUDTTYPEを付与します。

指定したUDTオブジェクトに適用される権限。
  • テーブルまたはビューのUDT列にアクセスできるようにします。
  • メソッド シグネチャを含んでいる場合、CREATE TYPE、ALTER TYPE、およびDROP TYPEを付与します。
  • CREATE ORDERINGおよびDROP ORDERINGを付与します。
  • CREATE CASTおよびDROP CASTを付与します。
  • CREATE TRANSFORMおよびDROP TRANSFORMを付与します。
  • UDT列に対するCREATE TABLEを付与します。
  • UDFまたはプロシージャに含まれるUDTを参照できるようにします。
  • すべてのメソッドを実行できるようにします。
  • CREATE METHOD、ALTER METHOD、およびREPLACE METHODを付与します。
適用なし。
UDTTYPE SYSUDTLIBデータベースに対してのみ付与できます。

SYSUDTLIBデータベース内に含まれるすべてのUDT、メソッド、およびUDFに適用される権限。

実質的には、SYSUDTLIBデータベース内に含まれるすべてのUDTに対してUDTUSAGEを付与します。

指定したUDTオブジェクトに適用される権限。
  • テーブルまたはビューのUDT列にアクセスできるようにします。
  • メソッド シグネチャが指定されていない場合にのみ、CREATE TYPEおよびALTER TYPEを付与します。
  • DROP TYPEを付与します。
  • CREATE ORDERINGおよびDROP ORDERINGを付与します。
  • CREATE CASTおよびDROP CASTを付与します。
  • CREATE TRANSFORMおよびDROP TRANSFORMを付与します。
  • UDT列に対するCREATE TABLEを付与します。
  • UDFまたはプロシージャに含まれるUDTを参照できるようにします。
  • すべてのメソッドを実行できるようにします。
適用なし。
UDTUSAGE 付与する対象:
  • SYSUDTLIBデータベース
  • TYPE。

SYSUDTLIBデータベース内に含まれるすべてのUDT、メソッド、およびUDFに適用される権限。

指定したUDTオブジェクトに適用される権限。
  • テーブルまたはビューのUDT列にアクセスできるようにします。
  • 指定したUDTにのみ関連付けられているすべてのメソッドを実行できるようにします。
WITH DATASET SCHEMA WITH GRANT OPTIONが指定されたユーザーDBCに付与されるデータベース レベルまたはスキーマ レベルの権限。

DBCは、作成される他のユーザーまたはデータベースに対してWITH GRANT OPTIONを使用して、または使用せずに明示的に付与する必要がある。DBCは、作成されるロールに対してWITH GRANT OPTIONを使用せずに明示的に付与する必要がある。

作成したスキーマでGRANT OPTIONを使用すると、スキーマの作成者にこの権限が自動的に付与される。

作成したスキーマをテーブルの列に関連付ける権限をユーザーに付与。