进程的用户ID和组ID

简单整理了进程相关的用户ID和组ID的要点

1. 6种ID:

(1) 用于标识用户: 实际用户ID;实际组ID;

(2) 用于权限检查:有效用户ID;有效组ID;

(3)exec函数保存的ID:保存的设置用户ID;保存的设置组ID;

2. 设置实际用户ID和有效用户ID函数:int setuid(uid_t uid);

3. 实际用户ID在系统登录时确定,但可以由超级用户用setuid函数设置;

4. 通常,有效用户ID = 实际用户ID,但如果程序模式中设置了set-user-ID位,执行此文件时,进程的有效用户ID变为文件的所有者用户ID;

5. 超级用户调用setuid,会将实际用户ID,有效用户ID,保存的设置用户ID都设置为参数uid;

6. 普通用户调用setuid,如果参数uid等于实际用户ID或保存的设置用户ID,则将有效用户ID改为参数uid;

7. 更改用户ID的方法汇总:

8. 设置有效用户ID函数:int seteuid(uid_t uid);

9. 对于普通用户,seteuid和setuid函数效果相同;对于超级用户,seteuid只改变有效用户ID,setuid改变所有3个用户ID;

10. 组ID的情况与用户ID的情况类似。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值