From: nagai@... Date: 2002-05-21T11:41:28+09:00 Subject: [ruby-dev:17162] Re: control groups 永井@知能.九工大です. # この件,気にはなってるんですが,手が回らず放置状態です. From: Takahiro Kambe Subject: [ruby-dev:17149] Re: control groups Date: Sun, 19 May 2002 22:36:14 +0900 Message-ID: <200205191336.g4JDa3D02946@edge.sky.yamashina.kyoto.jp> > > でも,実/実効ユーザ ID を変更して root 権限を放棄してしまえば, > > newgrp しようとしても password を要求されると思いますけど, > > それではダメということですか? > newgrpコマンドの存在を前提にすること自体、特定のシステムに目一杯依存し > ます。 「newgrp を使え」って話ではなくて,「仮に newgrp しようとしても, password を知ってなきゃ権限は取れないんで,気にしなくてもいいのでは?」 というつもりでした. 実際には十二分に問題ありで,私の方がボケてたというわけですが.(^_^; [ruby-dev:16883] でのプランに加えるとしたら,system call の類を ID_Syscall.setgroups, ID_Syscall.getgroups, ID_Syscall.initgroups で加えるのはいいとして,高レベルでのメソッドはどこに加えましょう? (案1) Process モジュール直下のメソッドとする. Process.groups, Process.groups=, Process.initgroups 問題:現在の環境依存のメソッドである uid= などは 捨てる方向に進もうか (互換性のためだけに残す) としているのに, それと同じレベルに新設するのは釈然としないか? (案2) グループ ID に関連するものなので,Process::GroupID モジュールに新設する. Process::GroupID.groups, Process::GroupID.groups=, Process::GroupID.initgroups 問題:グループ ID に関連するとはいえ,補助グループに関しても含めるのは 含めすぎかも? また,initgroups はユーザ ID にも関わるけれども, Process::GroupID に含めるだけで問題なし? Process::UserID.initgroups も追加する? (案3) 新たなモジュールを作る. Process::Groups.init, Process::Groups.get, Process::Groups.set (or Process::SupGroups.…) 問題:補助グループのためだけにモジュールを作るのは冗長? -- 永井 秀利 (九工大 知能情報) nagai@ai.kyutech.ac.jp