Trusted Solaris のラベル管理

label_encodings 関連の手順

label_encodings (4) ファイルを変更する


注意 - 注意 -

label_encodings ファイルの変更はホストのインストール時に行うのが安全です。操作ファイルを変更する必要が生じた場合は、慎重に行ってください。label_encodings(4) ファイル中の警告を参照してください。


  1. ADMIN_LOW ワークスペースでセキュリティ管理者役割になります。

  2. label_encodings ファイルの新規または既存バージョンを開きます。

    1. label_encodings ファイルの新規バージョンを作成する場合は、任意のテキストエディタを使ってファイルを作成するか、「エンコーディングの編集 (Edit Encodings)」アクションを使用します。

      「エンコーディングの編集 (Edit Encodings)」アクションは、このファイルを編集し、chk_encodings(1M) を実行します。


      注 -

      ファイルをまったく新しく作成する場合は、「ラベルエンコーディングファイルのテンプレート」に示すすべてのセクションを必ず指定してください。または、付録 A 「使用例: ラベルエンコーディングファイル」 の例をコピーし、変更してください。



      注 -

      ラベル間の関係を分析し、結果を表示するには、-a オプションを指定した chk_encodings(1M) をコマンド行から実行します。


    2. インストールする新規バージョンの準備ができたら、「エンコーディングの検査 (Check Encodings)」アクションを使ってファイルのオープンと検査を行います。

      「エンコーディングの検査 (Check Encodings)」アクションでは、指定するファイルに対し chk_encodings(1M) が実行されます。ファイルが検査に合格すると、すでにインストールされている label_encodings ファイルの上書きを確認するメッセージが出力されます。上書きを許可すると、label_encodings.orig という名前でバックアップコピーが作成され、既存のファイルが上書きされます。


      注 -

      デフォルトでは、「エンコーディングの検査 (Check Encodings)」アクションはセキュリティ管理者役割でもスーパーユーザー役割でも使用できます。スーパーユーザー役割の場合は、インストール後にシステムを構成するときに、このアクションを使って label_encodings ファイルをインストールします。


    3. 新規の label_encodings ファイルをインストールする場合は、次のプロンプトに肯定の応答を返します。


      Do you want to install this label_encodings file?
  3. 「ワークスペース (Workspace)」メニューを使ってウィンドウマネージャを再起動し、新しいエンコーディングファイルを初期化します。

  4. Trusted Solaris ホストからなる分散システムで、label_encodings ファイルのコピーを NIS+ マスターからこのシステムにあるすべてのホストの /etc/security/tsol ディレクトリに配布します。

    変更したファイルをフロッピーディスクにコピーし、それを手動で配布する方法については、「label_encodings ファイルをフロッピーディスクにコピーする」を参照してください。システムが操作可能になった後で、変更したファイルを rdist(1) コマンドを使って配布する方法については、『Trusted Solaris 管理の手順』の「その他の作業と操作手順」の「変更した構成ファイルのネットワーク上のホストへの配布」を参照してください。

label_encodings ファイルをフロッピーディスクにコピーする

  1. ADMIN_LOW ワークスペースでセキュリティ管理者役割になります。

  2. 次のようにしてフロッピーデバイスを ADMIN_LOW で割り当てます。

    1. フロッピーデバイスの名前を強調表示します。

    2. デバイスを「割り当てられたデバイス (Allocated Devices)」リストに移動します。

    3. 「更新後のラベル (Update With)」フィールドに「ADMIN_LOW」と入力します。

    4. OK」をクリックします。

  3. フロントパネルのファイルマネージャアイコンをダブルクリックします。

  4. ファイルマネージャを使って、label_encodings ファイルが含まれているフォルダを見つけます。


    注 -

    label_encodings ファイルのコピーには別の名前を指定してください。ドット (.) を使用しない 8 文字未満の名前にすれば、通常、どのフロッピーディスクの PC ファイルシステムとも互換性があります。PC ファイル名のドットに続く文字列 (.doc など) は、ファイルのタイプを表す接尾辞として使用されます。


  5. 「ファイル (File)」メニューから「フロッピーディスクを表示」を選択します。

  6. コピーするファイルのアイコンを強調表示します。

  7. ファイルをフロッピーディスクフォルダにドラッグします。

  8. フロッピーディスクフォルダ上で「ファイル (File)」メニューから「取り出し (Eject)」を選択します。

フロッピーディスクから label_encodings ファイルをコピーする

  1. ADMIN_LOW ワークスペースでセキュリティ管理者役割になります。

  2. 次のようにしてフロッピーデバイスを ADMIN_LOW で割り当てます。

    1. フロッピーデバイスの名前を強調表示します。

    2. デバイスを「割り当てられたデバイス (Allocated Devices)」リストに移動します。

    3. 「更新後のラベル (Update With)」フィールドに「ADMIN_LOW」と入力します。

    4. OK」をクリックします。

  3. フロントパネルのファイルマネージャアイコンをダブルクリックします。

  4. ファイルマネージャを使って、必要な宛先ディレクトリを見つけます。

  5. 「ファイル (File)」メニューから「フロッピーディスクを表示」を選択します。

    フロッピーディスクフォルダが開かれます。

  6. label_encodings ファイルのアイコンを強調表示します。

  7. フロッピーディスクフォルダからファイルを宛先ディレクトリにドラッグします。

    ファイルを /etc/security/tsol フォルダにドラッグする場合は、ドラッグするファイルの名前が label_encodings でないことを確認してください。ファイル名が label_encodings の場合、ファイルをドロップしたときに既存の label_encodings ファイルが上書きされます。したがって、ファイル名が同じ場合は、ファイルをホストにコピーしてから「エンコーディングの検査 (Check Encodings)」アクションを使ってファイルをインストールしてください。この手順については、「label_encodings (4) ファイルを変更する」を参照してください。

  8. フロッピーディスクフォルダ上で「ファイル (File)」メニューから「取り出し (Eject)」を選択します。

  9. 新しいエンコーディングファイルを初期化します。

    ワークスペースメニューを使ってウィンドウマネージャを再起動します。

既存のラベルエンコーディングファイルに Sun の拡張を追加する

  1. /etc/security/tsol にあるデフォルトの label_encodings ファイルの 1 つから LOCAL DEFINITIONS セクションをコピーし、このセクションをサイトの既存ファイルに追加します。

    必要なら、ファイルの編集と検査を行う方法について 「label_encodings (4) ファイルを変更する」を参照してください。

  2. サイトのセキュリティポリシーに合わせて宛先を変更します。

    拡張の構成方法については、第 4 章「LOCAL DEFINITIONS セクションの Sun 拡張機能の変更」を参照してください。

  3. 「エンコーディングの検査 (Check Encodings)」アクションを使ってファイルを検査します。

  4. 「エンコーディングの検査 (Check Encodings)」アクションからプロンプトが表示されたら、変更した label_encodings ファイルをインストールします。

ラベルなし動作を設定する

インストールチームは次のことを行います。

  1. label_encodings.single のシングルラベルの名前を変更するか、または確定します。

    これについては、「デフォルトのシングルラベル用エンコーディングファイルのシングルラベルを入れ替える」を参照してください。

  2. ユーザーマネージャにユーザーアカウントを設定するときは、ユーザーをシングルラベル操作に限定します。

    例は、PUBLIC ラベルを示しています。

    1. ユーザー認可上限と初期 (最下位の) ラベルを唯一のエンコーディングされたラベルと同等に設定します。


      Clearance: PUBLIC 
      Minimum Label: PUBLIC
    2. 機密ラベルを非表示に設定します。


      SL: Hide

デフォルトの label_encodings ファイルの格付けを追加するまたは名前を変更する

  1. ADMIN_LOW ワークスペースのセキュリティ管理者役割で、編集する label_encodings ファイルを開きます。

    必要に応じて、「label_encodings (4) ファイルを変更する」を参照してください。

  2. VERSION= セクションに自分のサイト名、ファイルのタイトル、バージョン番号、および日付を入力します。


    VERSION= Sun Microsystems, Inc. Example Version - 5.8 97/05/28

    Sun では、バージョン番号と日付に SCCS キーワードを使用しています(SCCS については、sccs(1) のマニュアルページを参照してください)。


    VERSION= Sun Microsystems, Inc. Example Version - %I% %E%
  3. CLASSIFICATIONS セクションに新しい格付けの長形式名、短形式名、および数値を入力します。


    name= NEW_CLASS; sname= N; value= 2; 
  4. 新しい格付けを ACCREDITATION RANGE セクションに追加します。

    デモ用ファイルの ACCREDITATION RANGE セクションに新しく 3 つの格付けが追加された例を次に示します。これらの 3 つ (INTERNAL_USE_ONLYNEED_TO_KNOWREGISTERED) はすべて all compartment combinations valid とともに指定されています。


    ACCREDITATION RANGE:
    
    classification= UNCLASSIFIED;        all compartment combinations valid;
    
    * i is new in this file
    classification= INTERNAL_USE_ONLY;   all compartment combinations valid;
    
    * n is new in this file
    classification= NEED_TO_KNOW;        all compartment combinations valid;
    
    classification= CONFIDENTIAL;        all compartment combinations valid except:
    c
    c a
    c b
    
    classification= SECRET;               only valid compartment combinations:
    . . .
    * r is new in this file
    classification= REGISTERED;           all compartment combinations valid;
  5. 必要に応じて、ACCREDITATION RANGE セクションで指定した最下位の値を調整します。


    minimum clearance= u; 
    minimum sensitivity label= u; 
    minimum protect as classification= u;
  6. 編集が終ったらファイルを保存し、手順を終了します。

  7. ファイルをインストールする場合は、「エンコーディングの検査 (Check Encodings)」アクションを使います。新規ファイルをインストールするかどうかのプロンプトに肯定の応答を返します。

デフォルト語句およびインバース語句を指定する

  1. ADMIN_LOW シェルのセキュリティ管理者役割で、編集するファイルを開きます。

    必要なら 「label_encodings (4) ファイルを変更する」を参照してください。

  2. 格付けを定義するときに、初期コンパートメントおよび初期マーキングを CLASSIFICATIONS セクションに指定します。


    CLASSIFICATIONS:
    name= PUBLIC;  sname= P;  value= 1;
    name= SUN FEDERAL;  sname= SUNFED;  value= 2; initial compartments= 4-5 ;
  3. 初期コンパートメントビットまたは初期マーキングビットを語句に割り当てて、デフォルト語句を指定します。


    name= DIVISION ONLY;  sname= DO;  minclass=  IUO; compartments= 4-5; 
    
    name= SMCC AMERICA;  sname= SMCCA; minclass= IUO; compartments= 4;  
    
    name= SMCC WORLD;  sname= SMCCW; minclass= IUO; compartments= 5;  
  4. 初期コンパートメントをチルド (‾) を頭に付けて語句に割り当てて、インバース語句を指定します。


    name= DIVISION ONLY;  sname= DO;  minclass=  IUO; compartments= 4-5; 
    
    name= SMCC AMERICA;  sname= SMCCA; minclass= IUO; compartments= ‾4;  
    
    name= SMCC WORLD;  sname= SMCCW; minclass= IUO; compartments= ‾5;  

デフォルトのシングルラベル用エンコーディングファイルのシングルラベルを入れ替える

  1. ADMIN_LOW ワークスペースのセキュリティ管理者役割で、編集する /etc/security/tsol/label_encodings.single ファイルを開きます。

    必要なら 「label_encodings (4) ファイルを変更する」を参照してください。

  2. 格付けの名前を代替名で置き換えます。

    1. CLASSIFICATIONS: セクションで、名前 SECRET を自分のサイトに適した代替名に変更します。

      この例では、name=SECRETから INTERNAL_USE_ONLY に変更され、sname=s から INTERNAL に変更されています。便宜上、value=initial compartments= の定義は変更されていません。


      CLASSIFICATIONS:  
      name= INTERNAL_USE_ONLY;  sname= INTERNAL;  value= 5; initial compartments= 4-5 
      190-239;
    2. ACCREDITATION RANGE で、格付けの短形式名 (S) を新しい短形式名に置き換えます。


      ACCREDITATION RANGE:
      
      classification= INTERNAL;      only valid compartment combinations:
      
      INTERNAL a b rel cntry1
  3. 必要に応じて、ユーザー認可範囲からコンパートメント a b rel cntry1 を取り除きます。


    ACCREDITATION RANGE:
    
    classification= INTERNAL;    only valid compartment combinations:
    
    INTERNAL 
  4. 必要に応じて、ACCREDITATION RANGE で、minimum clearance (最下位の認可上限)、minimum sensitivity label (最下位の機密ラベル)、minimum protect as classification (最下位の機密保護の格付け) の定義を新しい短形式名と置き換えます。


    ACCREDITATION RANGE:
    
    classification= INTERNAL;      only valid compartment combinations:
    
    INTERNAL
    
    minimum clearance= INTERNAL;
    minimum sensitivity label= INTERNAL;
    minimum protect as classification= INTERNAL;

独自のシングルラベルエンコーディングファイルを作成する

  1. ADMIN_LOW ワークスペースのセキュリティ管理者役割で、編集する label_encodings ファイルを開きます。

    必要なら 「label_encodings (4) ファイルを変更する」を参照してください。

  2. 格付けが 1 つだけで、必要なコンパートメントだけのエンコーディングファイルを作成します。

    たとえば、次に示すように、格付けが INTERNAL_USE_ONLY で、語句には何も指定しない label_encodings ファイルを作成できます。


    VERSION= Single-label Encodings
    
    . . .
    CLASSIFICATIONS:
    
    name= INTERNAL_USE_ONLY;	     sname= INTERNAL;  value= 5;
    
    INFORMATION LABELS:
    
    WORDS:
    
    SENSITIVITY LABELS:
    
    WORDS:
    
    CLEARANCES:
    
    WORDS:
    
    CHANNELS:
    
    WORDS:
    
    PRINTER BANNERS:
    
    WORDS:
  3. ACCREDITATION RANGE セクションに指定するのは、格付けは 1 つだけ、コンパートメントの有効な組み合わせも 1 つだけです。

    次の例に示すように、自分の格付け、および自分のコンパートメントの語句があればそれを使用して、ACCREDITATION RANGE セクションの設定値を入力します。


    ACCREDITATION RANGE:
    
    classification= INTERNAL;
    only valid compartment combinations:
    
    INTERNAL
    
    minimum clearance= INTERNAL;
    minimum sensitivity label= INTERNAL;
    minimum protect as classification= INTERNAL;
  4. 第 4 章「LOCAL DEFINITIONS セクションの Sun 拡張機能の変更」で説明する LOCAL DEFINITIONS セクションをエンコーディングします。このとき、システムのデフォルトのラベル表示は External に設定します。

  5. ラベルをユーザーに対して非表示に設定します。

    これについては、「ラベルをユーザーに対して非表示に設定する」を参照してください。

ラベルをユーザーに対して非表示に設定する

  1. ユーザーマネージャを使用してユーザーアカウントの設定を行うときは、ユーザーに対してラベルを非表示に設定し、ラベル範囲をシングルラベルだけに設定します。

    1. デフォルトのラベル表示を External に設定します。

    2. SL」メニューから「非表示 (Hide)」を選択します。

  2. アカウントの「認可上限 (Clearance)」を自身の「最下位 SL (Minimum SL)」と同等に設定します。

    認可上限が 1 つ、機密ラベルが INTERNAL_USE_ONLY の場合、「認可上限 (Clearance)」と「最下位ラベル (Minimum Label)」は、INTERNAL_USE_ONLY に設定します。