各プロセスには3つのユーザーIDがあります。
- 実際のユーザーID(
ruid
)。 - 有効なユーザーID(
euid
)。 - 保存されたユーザーID(
suid
)。
同様に、プロセスには3つのグループIDがあります。
- 実際のグループID(
rgid
)。 - 有効グループID(
egid
)。 - 保存されたグループID(
sgid
)。
私が理解したように、そしてeuid
(egid
一緒に)は権限を処理するために使用されます。supplementary group IDs
では、ruid
andsuid
とrgid
and はsgid
権限の処理にどのような役割を果たしますか?
答え1
実際、LinuxはファイルシステムのユーザーIDとグループID(もちろん追加のグループIDも含む)を使用してファイルにアクセスする権限を決定します。setfsuid()
。通常、これは有効なユーザーIDとグループIDと同じです。実際および保存されたユーザーIDとグループIDは、ファイル、共有メモリーなどへのアクセスを決定するために絶対に使用されません。
実際および保存されたユーザーIDはいあるプロセスが別のプロセスにシグナルを送信できるかどうかを確認するために使用されます。man 2 kill
。
バラよりman 7 credentials
完全な議論をしなさい。