例: ユーザーが必要な権限を持たない場合の行レベル セキュリティ制約とSELECT文 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ操作言語

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

この例は、必要なOVERRIDE権限を持たないユーザーが行レベル セキュリティのSELECT制約があるテーブル上でSELECT文を実行する場合のSELECT制約の適用方法を示します。

     SELECT * FROM rls_tbl;

SELECT文処理には、RS.rls_tblからSYSLIB.SELECTCATEGORIES ( '90000000'XB, RS.rls_tbl.categories ) AND SYSLIB.SELECTLEVEL (2, RS.rls_tbl.levels)という条件で取得するステップがあります。

この例で使用するテーブル定義は、以下のとおりです。

     CREATE TABLE rls_tbl(
       col1 INT,
       col2 INT,
       classification_levels   CONSTRAINT,
       classification_categories CONSTRAINT);

ユーザーのセッション制約値は、次のとおりです。

     Constraint1Name LEVELS
     Constraint1Value 2
     Constraint3Name CATEGORIES
     Constraint3Value '90000000'xb