例: セッションの行レベル セキュリティ カテゴリの変更 - 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/ncd1596241368722.ditamap
dita:ditavalPath
ja-JP/ncd1596241368722.ditaval
dita:id
B035-1144
Product Category
Software
Teradata Vantage

ユーザーarn_andersonがログオンします。その結果のセッションには、unclassifiedレベルとnatoカテゴリの行レベル セキュリティ ラベルが付きます。セッションが確立されるとすぐに、arn_andersonはカテゴリをnorwayに変更します。

     SET SESSION CONSTRAINT = classification_category (norway) ;

SET SESSION CONSTRAINTリクエストの実行後に、セッションのラベルは、unclassifiednorwayのラベルになります。

後に、arn_andersonが開始したセッションで、inventoryの3つの行のいずれかを読み取るとします。その場合、ユーザーは以下のSELECTリクエストを実行します。

     SELECT *
     FROM inventory
     WHERE col_1=12122;

このリクエストの結果はゼロ行になり、「F」という値が返されます。つまり、ユーザーの資格情報がセキュリティ ポリシー検証に合格しなかったという意味の値です。したがって、問合わせに追加された制約述部の評価はFALSEになり、読み取りから行が除外されてしまいます。

このリクエストでVantageから行が返されないのは、arn_andersonのレベルunclassifiedでは機密情報の行を読み取れないからであるか、そのラベルのカテゴリnorwayではnatoカテゴリの行を読み取れないからです。