非大域ゾーンは「ラベル付けされたゾーン」と呼ばれます。ラベル付けされたゾーンにはそれぞれ固有のラベルがあります。ラベル付けされたゾーン内のすべてのオブジェクトのラベルは同じです。たとえば、ラベル付けされたゾーンで実行されるすべてのプロセスのラベルは同じです。ラベル付けされたゾーンの書き込み可能なすべてのファイルのラベルも同じです。複数のラベルでクリアされるユーザーは、ラベル付けされたゾーンに各ラベルでアクセスできます。
Trusted Extensions は、ゾーン用のラベル API のセットを定義します。次の API は、ラベル付けされたゾーンに関連付けられているラベル、およびゾーン内のパス名を取得します。
getpathbylabel()
getzoneidbylabel()
getzonelabelbyid()
getzonelabelbyname()
getzonerootbyid()
getzonerootbylabel()
getzonerootbyname()
これらの API の詳細は、「ゾーンのラベルへのアクセス」を参照してください。
ファイルのラベルは、ゾーンのラベル、またはファイルを所有するホストのラベルに基づきます。したがって、ファイルの再ラベル付けを行う場合、該当するラベル付けされたゾーンまたはラベル付けされたホストにファイルを移動する必要があります。ファイルの再ラベル付けのプロセスは、ファイルの「再格付け」とも呼ばれます。setflabel() ライブラリルーチンは、ファイルを移動することによってファイルの再ラベル付けを行います。ファイルの再ラベル付けのためには、プロセスが file_upgrade_sl 特権または file_downgrade_sl 特権を表明する必要があります。getlabel(2) および setflabel(3TSOL) のマニュアルページを参照してください。
特権の設定に関する詳細は、『Solaris セキュリティーサービス開発ガイド』の第 2 章「特権付きアプリケーションの開発」を参照してください。