名前 | 補足 | 属性 | 関連項目 | 警告 | 注意事項
Solaris Resource Manager ソフトウェアがインストールされ、有効である場合、setuid(2SRM) システムコールは、標準の機能に加えて、呼び出し元プロセスをその新しい実ユーザー ID に関連する l ノードに接続します。この接続は、setuid が成功し、呼び出し元プロセスの実ユーザー ID が変更された場合だけに行われます。そうでない場合、呼び出し元プロセスは元の l ノードに接続されたままです。
新しい実ユーザー ID を持つ l ノードが存在しない場合、呼び出し元プロセスはシステムの srmlost の l ノードに接続されます。srmlost の l ノードはシステム起動時に割り当てられますが、この目的のためだけに予約されているので通常では使用されません。セキュリティ保護のために、通常、srmlost の l ノードの資源制限は中ぐらいで、CPU 割当率は小さく、特別な特権はありません。
srmlost の l ノード割り当てられていない場合、あるいは当該 l ノードへの接続が失敗した場合、呼び出し元プロセスはオリジナルの l ノードに接続されたままです。
標準の setuid の意味はこの新しい機能の影響を受けません。つまり、上記の失敗により、setuid が異常終了したり、エラーを戻したりすることはありません。指定した l ノードにプロセスを接続できなかった場合、setuid はメッセージをコンソールに書き込み、システム管理者に警告します。
setuid(2), srm(5SRM)
『Solaris Resource Manager 1.1 のシステム管理』
指定した l ノード (または、srmlost の l ノード) に接続できなかった場合、プロセスは元の l ノードに接続されたままのため、セキュリティが侵害される可能性があります。つまり、元の l ノードが新しい l ノードでは拒否される特権を所有している可能性があるため、setuid 以後の資源割当率が元の l ノードに負わせられるという可能性があります。
システム管理者は、すべてのユーザーの l ノードが存在することを確認しなければなりません。
このマニュアルページは、SunOS 5.6 および SunOS 5.7 に適用できます。