grant_privilege(id) -> Integer
[permalink][rdoc][edit]eid=(id)
-
現在のプロセスの実効ユーザ ID を id に変更します。成功したら id を返します。
実ユーザ ID は変更されないことが保証されます。保存ユーザ ID が変更されないかもしれないので root 権限の完全放棄には使えません。保存ユーザ ID が変化するかどうかは Process::UID.#re_exchangeable? が true を返すかどうかで決まります。
- true の環境では、実ユーザ ID と異なる値を設定した場合、保存ユーザ ID は新しい実効ユーザ ID の値に設定されます。
- false の環境では保存ユーザ ID は変化しません。
利用できるかはプラットフォームに依存します。
- [PARAM] id:
- ユーザ ID を整数で指定します。
- [EXCEPTION] Errno::EXXX:
- 変更できない場合に発生します。
- [EXCEPTION] NotImplementedError:
- メソッドが現在のプラットフォームで実装されていない場合に発生します。
[Process.uid, Process.euid] #=> [0, 0] Process::UID.grant_privilege(33) #=> 33 [Process.uid, Process.euid] #=> [0, 33]