Linux下setuid函数学习

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_35865125/article/details/88700931

内核为每个进程维护三个UID值:

实际用户ID(real uid)、 有效用户ID(effective uid)、 保存的设置用户ID(saved set-user-ID)。

实际用户ID和实际用户组ID:标识我是谁,也就是登录用户的uid和gid,比如我的Linux以fg登录,在Linux运行的所有的命令的实际用户ID都是fg的uid,实际用户组ID都是fg的gid(可以用id命令查看)。

有效用户ID和有效用户组ID:有效用户ID就是当前进程是以哪个用户ID来运行的(当前进程对资源的访问权限取决于其有效用户ID的权限),一般情况下是实际用户ID,如果可执行文件具有了SUID权限,那么它的有效用户ID就是可执行文件的拥有者。

保存的设置用户ID就是有效用户ID的一个副本,与SUID权限有关。

REF:

https://www.cnblogs.com/bwangel23/archive/2015/01/15/4225818.html   (good)

https://www.cnblogs.com/Jimmy1988/p/7260215.html (good)

https://www.cnblogs.com/kunhu/p/3699883.html

UNIX环境高级编程 第三版 8.11

猜你喜欢

转载自blog.csdn.net/qq_35865125/article/details/88700931