ALTER SECURITY LABEL COMPONENT ステートメント

ALTER SECURITY LABEL COMPONENT ステートメントは、 セキュリティー・ラベル・コンポーネントを変更します。

呼び出し

このステートメントは、アプリケーション・プログラムに組み込むか、あるいは対話式に発行することができます。 これは、DYNAMICRULES の実行動作がパッケージに効力を持つ場合にのみ、動的に準備できる実行可能ステートメントです (SQLSTATE 42509)。

許可

このステートメントの許可 ID が持つ特権には、SECADM 権限が含まれている必要があります。

構文

Read syntax diagramSkip visual syntax diagramALTER SECURITY LABEL COMPONENTcomponent-name add-element-clause
add-element-clause
Read syntax diagramSkip visual syntax diagramADD ELEMENTstring-constantarray-element-clausetree-element-clause
array-element-clause
Read syntax diagramSkip visual syntax diagramBEFOREAFTERstring-constant
tree-element-clause
Read syntax diagramSkip visual syntax diagramROOTUNDERstring-constant,OVERstring-constant

説明

コンポーネント名
変更されるセキュリティー・ラベル・コンポーネントの名前を指定します。 名前の指定されたコンポーネントは、現行サーバーに存在するものでなければなりません (SQLSTATE 42704)。
ADD ELEMENT
セキュリティー・ラベル・コンポーネントに追加されるエレメントを指定します。 array-element-clause および tree-element-clause が指定されない場合、 エレメントはセット・コンポーネントに追加されます。
ストリング定数
セキュリティー・ラベル・コンポーネント用の一連の有効値に追加されるストリング定数値。 この値は、セキュリティー・ラベル・コンポーネント用の一連の有効値に含まれる 他のいずれかの値と同じであることはできません (SQLSTATE 42713)。
BEFORE または AFTER
配列コンポーネントでは、セキュリティー・ラベル・コンポーネント用のエレメント値の順序付きセット内で、 エレメントが追加される位置を指定します。
BEFORE
追加されるエレメントは、識別される既存のエレメントの直前にランク付けされます。
AFTER
追加されるエレメントは、識別される既存のエレメントの直後にランク付けされます。
ストリング定数
配列コンポーネント内にある既存のエレメントのストリング定数値を指定します (SQLSTATE 42704)。
ROOT または UNDER
ツリー・コンポーネントでは、セキュリティー・ラベル・コンポーネント用のノード・エレメント値のツリー構造内で、 エレメントが追加される位置を指定します。
ROOT
追加されるエレメントは、ツリーのルート・ノードであるとみなされます。
UNDER ストリング定数
追加されるエレメントは、string-constant で識別されるエレメントの直接の子です。 string-constant 値は、 ツリー・コンポーネント内に存在するエレメントでなければなりません (SQLSTATE 42704)。
OVER string-constant、...
追加されるエレメントは、string-constant 値のリストで識別されるすべてのエレメントの直接の子です。 それぞれの string-constant 値は、 ツリー・コンポーネント内に存在するエレメントでなければなりません (SQLSTATE 42704)。

ルール

  • エレメントの名前中で以下のいずれの文字も使用できません (SQLSTATE 42601):
    • 左括弧 - (
    • 右括弧 - )
    • コンマ - ,
    • コロン - :
  • エレメント名は、32 バイト以下でなければなりません (SQLSTATE 42622)。
  • セキュリティー・ラベル・コンポーネントがセットまたはツリーである場合、 最大 64 個のエレメントをそのコンポーネントの一部とすることができます。
  • コンポーネントが配列である場合、タイプが配列のセキュリティー・ラベル・コンポーネントを作成するときに指定できるエレメントの総数 (65 535) と、エレメントの総数が一致する配列に到達できることもできないこともあります。 データベース・マネージャーは、新しいエレメントが追加されるインターバル内から、 エンコード値を新しいエレメントに割り当てます。 エレメントを配列コンポーネントに追加するときに従うパターンに応じて、 特定のインターバル内で割り当て可能な値の数は、 複数のエレメントがそのインターバル内に挿入された場合にはすぐに使い果たされることがあります。
  • BEFORE および AFTER を指定するのは、配列のセキュリティー・ラベル・コンポーネントだけです (SQLSTATE 42613)。
  • ROOT および UNDER を指定するのは、ツリーのセキュリティー・ラベル・コンポーネントだけです (SQLSTATE 42613)。

  • セット・コンポーネントでは、セット内のエレメントに順序はありません。

  • 例 1: エレメント「High classified」を、エレメント「Secret」および「Classified」の 間の LEVEL セキュリティー・ラベル配列コンポーネントに追加します。
       ALTER SECURITY LABEL COMPONENT LEVEL
         ADD ELEMENT 'High classified' BEFORE 'Classified'
  • 例 2: エレメント 「Funding」を COMPARTMENTS セキュリティー・ラベルのセット・コンポーネントに追加します。
       ALTER SECURITY LABEL COMPONENT COMPARTMENTS
         ADD ELEMENT 'Funding'
  • 例 3: エレメント「ENGINE」および「TOOLS」を、 GROUPS セキュリティー・ラベルの配列コンポーネントに追加します。 以下の図は、これらの新しいエレメントが配置される場所を示しています。
                           PROJECT
                      ________|________
                     |                 |
                  ENGINE             TOOLS
             ________|________
            |                 |
          TEST           DEVELOPMENT
                        ______|______
                       |             |
                    CURRENT        FIELD
    
    
       ALTER SECURITY LABEL COMPONENT GROUPS
         ADD ELEMENT 'TOOLS' UNDER 'PROJECT'
    
       ALTER SECURITY LABEL COMPONENT GROUPS
         ADD ELEMENT 'ENGINE' UNDER 'PROJECT'
           OVER 'TEST', 'DEVELOPMENT'