/usr/bin/setlabel newlabel filename...
ほとんどの場合、setlabel は、ラベルが newlabel に対応しているゾーンにファイルを移動します。古いファイルパス名は、新規ゾーンのルートパス名との相対位置になるように調整されます。ファイルの親ディレクトリの古いパス名が、新規ゾーン内にディレクトリとして存在しない場合、ファイルは移動されません。移動後は、現在のゾーン内でファイルにアクセスすることはできなくなります。
ただし、setlabel は、マルチレベル ZFS ファイルシステム上に存在するファイルやディレクトリに対しては異なった方法で動作します。zfs(1M) を参照してください。その場合、マルチレベルファイルシステムではファイルごとのラベルがサポートされているため、ファイルは移動されませんが、そのラベルが適切に付け直されます。
newlabel および filename が指定されない場合、ラベルは設定されません。
ラベルの定義は、サイトのセキュリティー管理者により行われます。ラベルは、システム内で常に大文字で表示されます。ユーザーは、大文字と小文字を任意に組み合わせてラベルを入力できます。ラベルの内容の追加や削除も可能です。
このコマンドを実行するのに必要な条件および必要な特権についての説明は、setflabel(3TSOL) を参照してください。
setlabel は、終了時に次のいずれかの値を返します。
正常終了。
使用方法のエラー。
ラベルの取得、設定、または変換中にエラー発生。
コマンド行では、1 つの単語だけから成るラベルを指定する場合を除き、ラベル全体を二重引用符で囲みます。引用符がないと、スペースの次の単語または文字は、新たな引数として解釈されます。
% setlabel SECRET somefile % setlabel "TOP SECRET" somefile
ラベルの内容は大文字でも、小文字でも、両者を混在させてもかまいません。ラベル内に複数の項目を記述する場合には、空白、タブ、コンマ、スラッシュ (/) のいずれかで区切ります。それ以外の文字や記号は区切り文字とは見なされません。
% setlabel "ts a b" somefile % setlabel "ts,a,b" somefile % setlabel "ts/a b" somefile % setlabel " TOP SECRET A B " somefile
somefile のラベルを SECRET A に設定する
example% setlabel "Secret a" somefile使用例 2 コンパートメントを有効にします。
プラス記号とマイナス記号を使って、既存のラベルを変更できます。プラス記号を使用すると、somefile のラベル用の指定したコンパートメントが有効になります。
example% setlabel +b somefile使用例 3 コンパートメントを無効にします。
マイナス記号を使用すると、格付け部に関連付けられたコンパートメントが無効になります。次のようにして、somefile のラベル内のコンパートメント A を無効にします。
example% setlabel -A somefile
既存ラベルの内容を追加または削除する場合で、ラベルの先頭文字がハイフン (−) のときは、その前に二重ハイフン (–-) を指定する必要があります。
次のようにして、somefile のラベル内のコンパートメント -A を無効にします。
example% setlabel -- -A somefile
属性についての詳細は、マニュアルページの attributes(5) を参照してください。
|
zfs(1M), setflabel(3TSOL), label_encodings(4), attributes(5)
このマニュアルページに記載されている機能を利用できるのは、システムが Trusted Extensions を使用して構成されている場合のみです。
ラベル設定に関するこの実装は、米国国防情報局 (DIA) の必須アクセス制御 (MAC) ポリシーにとって重要です。詳細は、label_encodings(4) を参照してください。