Trusted Solaris のラベル管理

格付けの追加と名前の変更

セキュリティ管理者役割は、デフォルトのデモ版の label_encodings ファイルに定義されている格付け名を置き換えること、新しい格付け名を定義すること、または一意的な格付けを持った新しいファイルを作成することができます。

格付けの数

1 つのサイトで定義できる格付けの総数は 255 です。

格付けとして定義されるキーワード

格付けとして定義されるキーワードを次の表に示します。アスタリスク(*)で始まるキーワードはオプションです。格付けに関連付けられるオプションの初期コンパートメントとマーキングの設定方法については、「デフォルト語句およびインバース語句の設定」を参照してください。

表 2-2 格付けの値

値 

条件 

name= 

(/)、 (,)、(;) などの使用は不可。それ以外の英数字や空白文字の使用は可。ラベルの指定時は、namesnameaname のいずれも入力可能。

sname=

格付けだけに必要。常に短形式名で機密ラベルに表示 ([ ] で囲む)。

*aname= 

ユーザーによる入力時にのみ使用する名前。いつでも代替名を入力できる。

value= 

格付け間の実際の階層を表すように値を設定すること。後の拡張に備えて、余裕をもたせておくこと。0 は ADMIN_LOW 用に予約。値は 1〜255 まで。

*initial compartments= 

あらゆるデフォルトのコンパートメント語句 (関連する格付けを持つラベルであれば、そのラベルに最初に表示される語句) のビット番号を指定。

応用: インバース語句にもビット番号を指定。推奨: 自分のサイトで最下位の格付け以外のすべての格付けにインバース語句を使用しているときは、インバース語句を後で追加できるように初期コンパートメントを確保しておくこと。最下位の格付けに初期コンパートメントや初期マーキングを使用することは推奨できない。 

*initial markings= 

情報ラベルに使用する。情報ラベルは Trusted Solaris 7 およびそれ以降のリリースでは使用されないので、この値は定義しない。

他の組織のラベルエンコーディングとの互換性が必要なエンコーディングを作成するのでなければ、使用するコンパートメントのビット番号については、気にする必要はありません。ただし、自分の使用している番号とそれぞれのビットの関係を把握してください。

以下に Trusted Solaris のデモ版のlabel_encodings ファイルの CLASSIFICATIONS セクションの冒頭部分を示します。


例 2-3 Trusted Solaris のデモ版の label_encodings ファイル (冒頭部分)


CLASSIFICATIONS:

*
name= UNCLASSIFIED;  sname= U;  value= 1;
name= CONFIDENTIAL;  sname= C;  value= 4; initial compartments= 4-5 190-239;
name= SECRET;        sname= S;  value= 5; initial compartments= 4-5 190-239;
name= TOP SECRET;    sname= TS; value= 6; initial compartments= 4-5 190-239;

例 2-3 で定義された格付けにはそれぞれ、必須の namesnamevalue が指定されています。CONFIDENTIAL、SECRET、TOP SECRET の格付けにはそれぞれ initial compartments (初期コンパートメント) が設定されていますが、UNCLASSIFIED には何も設定されていません。

以下の表は、初期コンパートメントのビットの割り当てとその意味を示しています。

表 2-3 初期コンパートメントのビット割り当て例とその意味

initial compartments= 4 5 100-227; 

この格付けのラベルでは、コンパートメントビットの 1、5、および 100〜227 は、初期設定でオンになっている (1 に設定)。 

例 2-3 に示した初期コンパートメントの一部は、デフォルト語句やインバース語句を定義するために後で使用します。またインバース語句を後で定義するために予約されているものもあります。

初期コンパートメントが設定されていない簡単な格付けの例を以下に示します。


例 2-4 初期コンパートメントや初期マーキングのない簡単な格付け定義例


CLASSIFICATIONS:

name= PUBLIC; sname= PUBLIC; value= 1;
name= INTERNAL_USE_ONLY; sname= INTERNAL; aname= INTERNAL; value= 4;
name= NEED_TO_KNOW; sname= NEED_TO_KNOW; aname= NEED_TO_KNOW; value= 5;
name= REGISTERED; sname= REGISTERED; aname= REGISTERED; value= 6;
initial compartments= 10;

デフォルト語句およびインバース語句の設定

初期コンパートメントまたは初期マーキングのいずれかにビットが設定されると、格付けされているすべてのラベルのビットは 1 になります。初期コンパートメントに指定された各ビットは、後で label_encodings ファイルで定義することによって、「デフォルト語句」または「インバース語句」を作成できます。

以下の表は、格付けに関連付けられた初期コンパートメント値の条件を要約しています。

表 2-4 格付けに使用する初期コンパートメントの値

値 

条件 

*initial compartments= 

あらゆるデフォルトのコンパートメント語句 (関連付けられた格付けを持つラベルであれば、そのラベルに常に表示される名前) のビット番号を指定。 

応用: インバース語句にもビット番号を指定。推奨: インバース語句を後で追加できるように初期コンパートメントを確保しておくこと。 

コンパートメントビットとマーキングビットに使用する番号については、エンコーディングが、別の組織のものと互換性を持つ必要がある場合に限り、注意する必要があります。

以下の例では、格付けが PUBLIC のラベルには初期コンパートメントが割り当てられていませんが、格付けが SUN FEDERAL のラベルには 4-5 が初期コンパートメントとして割り当てられています。


例 2-5 初期コンパートメントの簡単な割り当て


name= PUBLIC;  sname= P;  value= 1;
name= SUN FEDERAL;  sname= SUNFED;  value= 4; initial compartments= 4-5

例 2-5 のようにビットが割り当てられている場合には、PUBLIC 格付けを含むラベルには、デフォルトのコンパートメントが割り当てられていない一方で、SUN FEDERAL 格付けを含むラベルのコンパートメントビットの 4 と 5 が常にオンになります。これらの初期コンパートメントビットの語句への割り当てを示す例については、以下のコード例とそれに続く説明を参照してください。


例 2-6 INFORMATION LABELS のデフォルト語句とインバース語句の例


SENSITIVITY LABELS:

WORDS:

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

label_encodings ファイルの SENSITIVITY LABELS セクションで定義された WORDS を上記のコード例に示します。コンパートメントビットの 4 と 5 が、DIVISION ONLY という語句に割り当てられています。コンパートメントビットの 4 と 5 は、インバース語句にも関連付けられており、SMCC AMERICA はインバースコンパートメントビットの ‾4 に、SMCC WORLD はインバースコンパートメントビットの ‾5 に割り当てられています。このエンコーディングの結果、格付けが SUN FEDERAL の情報ラベルには最初から DIVISION ONLY という語句が含まれ、そのバイナリ表現として、コンパートメントビットの 4 と 5 がオンになり、一方、格付けが PUBLIC の情報ラベルのコンパートメントビットの 4 と 5 は常にオフになります。その結果、SMCC AMERICASMCC WORLD が、ラベルに表示されます。IUO (INTERNAL_USE_ONLY) の minclass はインバース語句として指定されるため、SMCC AMERICASMCC WORLD は、PUBLIC の機密ラベルには表示されません。それによって、この 2 つのインバース語句の存在が分かります。

後で割り当てられることが予約されていないコンパートメントやマーキングビットに関しては以下のことを心掛けてください。指定された初期コンパートメントごとに SENSITIVITY LABELS: WORDS: セクションと INFORMATION LABELS: WORDS: セクションの中のビットに語句を割り当てる必要があります。