进程可以具有的每个不同的UID的目的是什么?

实际的UID,有效的UID,以及某些系统甚至具有“已保存的UID”。所有这些的目的是什么,尤其是最后一个?

回答:

每个UNIX进程都有3个与之关联的UID。超级用户特权是UID = 0。

这是创建此流程的用户/流程的UID。仅当正在运行的进程的EUID = 0时才可以更改。

此UID用于评估执行特定操作的进程的特权。如果EUID!= 0,则可以将EUID更改为RUID或SUID。如果EUID = 0,则可以将其更改为任何内容。

如果您将set-

UID位置1来运行可执行文件,则最终的运行过程将以运行它的真实用户的真实UID以及可执行文件所有者的有效且已保存的UID开始。如果该过程随后调用setuid()或seteuid()来更改其有效UID,则由于保存了UID,它们仍然可以再次取回其原始特权。如果未设置set-

UID,则SUID将成为RUID。

以上是 进程可以具有的每个不同的UID的目的是什么? 的全部内容, 来源链接: utcz.com/qa/401839.html

回到顶部