微信小程序失物招领平台 3 种用户身份权限设计与 RBAC 模型实战
2026/7/11 17:11:09
在 Linux 系统中,进程的用户和组 ID 是进行权限管理的重要依据,涉及到真实用户 ID、有效用户 ID 和保存用户 ID 等概念。
exec调用时,通常有效用户 ID 不变。但执行setuid(suid)二进制文件时,进程可改变其有效用户 ID,将其设置为程序文件所有者的用户 ID。例如,/usr/bin/passwd文件是setuid文件,其所有者为root,普通用户的 shell 创建进程执行该文件时,进程的有效用户 ID 会变为root。fork时,子进程会继承父进程的保存用户 ID。执行exec调用时,内核会将保存用户 ID 设置为有效用户 ID。非特权用户不能更改保存用户 ID,超级用户可将其更改为与真实用户 ID 相同的值。root进程可切换的用户 ID。