名前 | 形式 | 機能説明 | 属性 | オプション | 戻り値 | 使用例 | 関連項目
testfpriv は、指定されたいくつかのファイルの特権セットを検査します。このコマンドには MAC 読み取り権が必要です。
privseta と privsetf 引数には、以下のいずれかを指定できます。
コンマで区切られた一連の特権名。これらの名前は getfpriv コマンドで得られます。
コンマで区切られた一連の特権 ID (数値)。これらの ID は </usr/include/sys/tsol/priv_names.h>中に定義されています。
すべての特権を表わすキーワード all
どちらの引数にも空白文字を含めることはできません。
-e オプション(同一を示す)を省略すると、指定した一連の特権が、コマンド行に記述した強制セットまたは許容セットのサブセットであるかが調べられます。その結果 testfpriv コマンドは、privseta または privsetf には記述されているがファイルの許容セットにも強制セットにも定義されていない特権を報告します。 -e オプションを指定すると、ファイルには定義されていたが testfpriv コマンドには指定されていなかった特権も報告します。
指定された各ファイルの特権セットは、次に説明するオプションに従って検査されます。
次の属性の説明については、attributes(5) のマニュアルページを参照してください。
属性タイプ | 属性値 |
---|---|
使用条件 | SUNWtsu |
privseta の内容が、filename の許容セットの一部または全部であるか否かを調べます。
privset の内容が、filename の特権セットと等しいか否かを調べます。
privsetf の内容が、filename の強制セットの一部または全部であるか否かを調べます。
出力を抑止するサイレントモード。このオプションは、たとえば戻り値だけを必要とするシェルスクリプト内で用いるのに便利です。
testfpriv は、終了時に以下のいずれかの値を返します。
指定された特権が当該ファイルの許容セットまたは強制セット中に存在したことを表わします。-e オプション指定時は、指定された特権が当該ファイルの許容セットまたは強制セットと一致したことを表わします。
指定された特権が当該ファイルの許容セット中に存在しなかったことを表わします。-e オプション指定時は、指定された特権以外の特権が当該ファイルの許容セット中に存在したことを表わします。
指定された特権が当該ファイルの強制セット中に存在しなかったことを表わします。-e オプション指定時は、指定された特権以外の特権が当該ファイルの強制セット中に存在したことを表わします。
1 と 2 の両方。つまり、許容セットと強制セットの両方で特権の不一致が見つかったことを表わします。
testfpriv がエラー終了した。
あるファイルの強制セット中に、ある一連の特権が存在しているかを調べるには、次のコマンドを使用します。
example%testfpriv -f p1,p2,p3 file1 |
この場合、指定した特権がすべて存在していれば、何も出力されません。存在していない特権があれば、次のような形式で表示されます。
example% file1:missing:p2 |
あるファイルの強制セットと許容セットの内容が、ある一連の特権と完全に等しいかを調べるには、次のコマンドを使用します。
example%testfpriv -e -f p1 -e -a p2 file2 |
この場合、完全に等しくなければ、不一致部分の内容が以下の形式で報告されます。
example% file3:forced:extra:p3:allowed:missing:p2:extra:p4 |
たとえば次のコマンドは、許容セットはすべてのビットがオンになっていて、かつ強制セットには p1 と p2 だけが存在していることを確かめています。
example% testfpriv -s -e -a all -f p1,p2 file4 |
このコマンドはサイレントモードを指定しているため、結果は出力されません。戻り値を調べることにより結果がわかります。
getfpriv(1), setfpriv(1), getfpriv(2), setfpriv(2)