Solaris のシステム管理 (セキュリティサービス)

特権とデバイス

スーパーユーザーモデルではファイルアクセス権だけでシステムインタフェースが保護されていますが、特権モデルでは特権を使用してシステムインタフェースを保護します。特権を使用したシステムでは、インタフェースを保護するほどの強さはファイルアクセス権にありません。proc_owner などの特権は、ファイルアクセス権を無効にした上でファイルシステム全体へのフルアクセス権を与える可能性があります。

このため、デバイスを開くにはデバイスディレクトリの所有権では不十分です。たとえば、/dev/ip デバイスを開く許可がグループ sys のメンバーに自動的に与えられることはありません。/dev/ip のファイルアクセス権は 0666 ですが、デバイスを開くには net_rawaccess 特権が必要です。

デバイスポリシーは特権によって制御されます。getdevpolicy コマンドは、各デバイスのデバイスポリシーを表示します。デバイス構成コマンド devfsadm は、デバイスポリシーをインストールします。devfsadm コマンドは、デバイスの読み取りまたは書き込みを行うため open に特権セットを設定します。詳細は、getdevpolicy(1M) および devfsadm(1M) のマニュアルページを参照してください。

デバイスポリシーを使えば、デバイスを開く権限をより柔軟に付与できます。デフォルトのデバイスポリシーとは異なる特権や、デフォルトのデバイスポリシーよりも多くの特権を要求することができます。特権要件は、デバイスポリシーに合わせて変更することも、ドライバ本体に合わせて変更することもできます。特権の変更は、デバイスドライバのインストール時、追加時、または更新時に行えます。

デバイスポリシーエントリとドライバ固有の特権を変更するには、add_drv コマンドと update_drv コマンドを使用できます。デバイスポリシーを変更するには、すべての特権を使用してプロセスを実行していなければなりません。詳細は、add_drv(1M) および update_drv(1M) のマニュアルページを参照してください。