SECLABEL スカラー関数
SECLABEL 関数は、データ・タイプが Db2SECURITYLABEL の、名前の付いていないセキュリティー・ラベルを戻します。 名前付きのセキュリティー・ラベルを作成する手間を省いて、特定のコンポーネント値を使ってセキュリティー・ラベルを挿入するには、SECLABEL 関数を使用します。
スキーマは SYSIBM です。
- security-policy-name
- 現行のサーバーに存在するセキュリティー・ポリシーを指定するストリング (SQLSTATE 42704)。 ストリングは、文字または GRAPHIC ストリングの定数かホスト変数でなければなりません。
- security-label-string
- security-policy-name で指名されたセキュリティー・ポリシーに対してセキュリティー・ラベルの有効な表記を戻す式 (SQLSTATE 4274I)。式は組み込み CHAR、VARCHAR、GRAPHIC、または VARGRAPHIC のいずれかのデータ・タイプの値を戻す必要があります。
例
- 例 1: 以下のステートメントは、CONTRIBUTIONS という名前のセキュリティー・ポリシーで保護されている表 REGIONS 内に行を挿入します。
挿入する行のセキュリティー・ラベルは、SECLABEL 関数によって与えられます。
セキュリティー・ポリシー CONTRIBUTIONS は、2 つのコンポーネントをもっています。
与えられるセキュリティー・ラベルは、最初のコンポーネントに対してエレメント LIFE MEMBER をもち、2 番目のコンポーネントに対してエレメント BLUE および YELLOW を持ちます。
INSERT INTO REGIONS VALUES (SECLABEL('CONTRIBUTIONS', 'LIFE MEMBER:(BLUE,YELLOW)'), 1, 'Northeast') - 例 2: 以下のステートメントは、3 つのコンポーネントを持つ TS_SECPOLICY という名前のセキュリティー・ポリシーで保護されている表 CASE_IDS 内に行を挿入します。
セキュリティー・ラベルは、SECLABEL 関数によって提供されます。
挿入されたセキュリティー・ラベルは、最初のコンポーネントに対してエレメント HIGH PROFILE、2 番目のコンポーネントに対して空値、3 番目のコンポーネントに対してエレメント G19 をもちます。
INSERT INTO CASE_IDS VALUES (SECLABEL('TS_SECPOLICY', 'HIGH PROFILE:():G19') , 3, 'KLB')
