SECLABEL スカラー関数

SECLABEL 関数は、データ・タイプが Db2SECURITYLABEL の、名前の付いていないセキュリティー・ラベルを戻します。 名前付きのセキュリティー・ラベルを作成する手間を省いて、特定のコンポーネント値を使ってセキュリティー・ラベルを挿入するには、SECLABEL 関数を使用します。

構文図を読む構文図をスキップするSECLABEL(security-policy-name , security-label-string)

スキーマは 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')