Trusted Solaris 開発ガイド

ラベルビルダーの動作

ラベルビルダーのダイアログボックスは、エンドユーザーに対し情報の入力を求め、その入力から有効な CMW ラベルを生成します。入力は、キーボードから行うことも、オプションを選択して行うこともできます。どちらの方法を使用しても、そのシステムの label_encodings(4) ファイルの定義どおりに有効なラベルまたは認可上限が構築されます。

ラベルビルダーでは、「了解 (OK)」、「リセット (Reset)」、「取り消し (Cancel)」、「更新 (Update)」プッシュボタンのデフォルトの動作が用意されています。tsol_lbuild_create(3) に渡されるコールバックは、「了解 (OK)」プッシュボタンに割り当てられ、アプリケーション固有の動作が行われます。

キーボード入力

「更新 (Update)」プッシュボタンは、エンドユーザーが入力するテキストを「更新後のラベル (Update With)」フィールドに取り込み、その文字列が label_encodings(4) ファイルの定義どおりに有効なラベルまたは認可上限であるかを検査します。

エンドユーザーが「了解 (OK)」プッシュボタンを選択すると、ユーザーが構築した値は、「了解 (OK)」プッシュボタンのコールバック実装に従って処理されます。

オプションの選択

「ラベルの設定 (Label Settings)」ラジオボタンを使用すると、格付けとコンパートメントから機密ラベルまたは認可上限を構築するか、あるいは格付け、コンパートメント、マーキングから情報ラベルを構築できます。モードによっては、これらのボタンの 1 つがグレー表示される場合があります。この設定は、前述したキーボード入力および「更新 (Update)」プッシュボタン方式には依存しません。

格付け、コンパートメント、マーキングの情報は、システムの label_encodings(4) ファイルから出力されます。label_encodings ファイルに指定された組み合わせと制限は、無効な組み合わせをグレー表示することによって適用されます。エンドユーザーがオプションを選択する場合、「ラベル (Label)」フィールドは、上側の「ラベル (Label)」フィールドを更新し、その値を tsol_lbuild_create(3) が返す ModLabelData 変数の適切な作業ラベルフィールドに格納します (「ModLabelData 構造体」を参照)。エンドユーザーは、表示される「格付け (CLASS)」ラジオボタンと「コンパートメント (COMPS)」ラジオボタンから、機密ラベル、認可上限、または CMW ラベルの機密ラベル部を構築できます。

エンドユーザーが「了解 (OK)」プッシュボタンを選択すると、ユーザーが構築した値は、「了解 (OK)」プッシュボタンのコールバック実装に従って処理されます。

「リセット (Reset)」プッシュボタン

「リセット (Reset)」プッシュボタンは、「ラベル (Label)」フィールド内のテキストを、アプリケーションの開始時の値に設定します。

「取り消し (Cancel)」プッシュボタン

「取り消し (Cancel)」プッシュボタンは、アプリケーションを終了します。