Solaris Trusted Extensions 開発ガイド

ラベル API

ラベル、ラベル範囲、およびラベル制限は、Trusted Extensions が設定されているシステム上の情報にだれがアクセスできるかを決定します。

ラベル API を使用して、ラベル、ラベル範囲と制限、およびラベル関係に対してアクセス、変換、および比較を実行します。ラベルは別のラベルより優位になったり、別のラベルから分離したりできます。

label_encodings ファイルには、それぞれの Trusted Extensions 環境に適した機密ラベル、認可上限ラベル、ラベル範囲、およびラベル関係が定義されています。このファイルはラベルの表示も制御します。セキュリティー管理者が label_encodings ファイルの作成および管理を担当します。label_encodings(4) のマニュアルページを参照してください。

プロセスのラベルは、プロセスが実行されるゾーンによって決定されます。

すべてのオブジェクトはラベルに関連付けられ、ラベル範囲に関連付けられる場合もあります。オブジェクトは、定義されたラベル範囲内の特定ラベルでアクセスできます。ラベル範囲に関連付けられるオブジェクトは、次のとおりです。

ラベルについての詳細は、「ラベルの型」を参照してください。

アクセス制御の決定にラベルを使用する

MAC は、ラベルを持つアプリケーションを実行するプロセスのラベル、またはプロセスがアクセスしようとするオブジェクトのラベル範囲を比較します。MAC は、プロセスが下位ラベルを読み取るのを許可し、等位ラベルに書き込むのを許可します。


Label[Process] >= Label[Object]

マルチレベルポート (MLP) に対するプロセス制約は、複数ラベルの要求を待機し、要求の発信元に応答を送信できます。Trusted Extensions では、そのような応答は等位書き込みです。


Label[Process] = Label[Object]

ラベル API の型

機密ラベル API

機密ラベル API は、次のために使用できます。

この API については、第 2 章「ラベルと認可上限」を参照してください。

認可上限ラベル API

ユーザー、デバイス、およびネットワークインタフェースにはラベル範囲があります。範囲の上限は、実質上の認可上限です。範囲の上限と範囲の下限が同じである場合、範囲は単一のラベルです。

認可上限ラベル API は、次のために使用できます。

この API については、第 2 章「ラベルと認可上限」を参照してください。

ラベル範囲 API

ラベル範囲は、次に対して制限を設定するために使用します。

ラベル範囲は管理のために割り当てられます。ラベル範囲は、ユーザー、役割、ホスト、ゾーン、ネットワークインタフェース、プリンタ、およびその他のオブジェクトに適用できます。

次の方法によって、ラベル範囲に関する情報を取得できます。

この API については、第 2 章「ラベルと認可上限」を参照してください。