码迷,mamicode.com
首页 > 其他好文 > 详细

设置用户id和设置组id

时间:2014-05-11 23:45:53      阅读:365      评论:0      收藏:0      [点我收藏+]

标签:c   文件   a   for   不同的      

实际用户id和实际组id:这两个字段在登录时取自口令文件中的登录项,在一个登录会话间这两个值不会改变

有效用户id和有效组id:这两个字段决定了对文件的访问权限

设置用户id和设置组id:同实际用户id和有效用户id不同的是,设置用户id是与文件绑定在一起的,而不是与用户绑定在一起

           对于一个程序文件,可以在文件模式字中设置一个特殊标志,其含义是“当执行此文件时,将用户的有效用户id设置为文件所有者的用户id”

           类似的是可以在文件模式字中设置另一个特殊标志,其含义是“当执行析此文件时,将用户的有效用户组id设置为文件组所有者的id”

           举例:ll  /usr/bin/passwd  -rwsr-xr-x 1 root root ................

           在某个有效用户非root的shell下执行passwd命令,shell会fork出一个子进程,此时子进程的有效用户id还是父进程的有效用户id,然后在子进程中exec程序/usr/bin/passwd

           exec会根据/usr/bin/passwd的SUID位(设置用户id位)将进程的有效用户id设置为该文件的所有这root,从而获得/etc/shadow的读写权限,exec退出后有效用户id变回

 

设置用户id和设置组id,布布扣,bubuko.com

设置用户id和设置组id

标签:c   文件   a   for   不同的      

原文地址:http://www.cnblogs.com/buptlyn/p/3721717.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!