作者:狮子_贾寒璐_759 | 来源:互联网 | 2023-09-15 18:07
1)实际用户ID
2)有效用户ID
3)保存的设置用户ID
还有组的用户ID类似上面的。
我感觉只有一个实际用户不就可以了?像 2) 3)设计的初衷是什么阿 ?
10 个解决方案
多用户、多组,主要涉及到安全,像现在云平台,虚拟机都是在虚拟化平台上跑的,平台安全很重要
另外,即使在同一个平台中,关键应用也要做到足够隔离,通过分组赋权保证安全,比如Oracle数据库只有Oracle用户和root才能访问,其它用户不可以。
非root用户有时候需要读取/执行root用户的文件,即临时借用一下root的权限
这是为了做服务器之类的时候,提供更多账户,并且分别安排权限
主要还是为了服务器的安全考虑。
我们常用的是跟人pc,基本上就是你一个人在捣鼓,你感觉没什么,但是一台服务器,上面的业务会很多服务也多,需要协同,这种情况就得适当分配一些权限,各安其职!
第三个,保存的用户id是什么意思?
说下我的理解
组的概念的提出应该不用解释,就是为一类人设置一种权限,不用繁琐的一个个去设置
然后就是每个用户有一个uid,这个是为了在系统中唯一区分这个用户账户
操作系统应该是为了增加用户程序的灵活性吧,引入了suid这个概念
suid这个就是使程序临时拥有程序所有者的权限,这样就能使某些只有特殊权限用户才能完成的工作其他人也可以替代性的执行脚本来完成,具体概念你可以搜下
有了suid这个概念自然就要出现euid这个概念了
因为系统内核是通过程序的euid去辨别程序的权限的,如果没有euid的话,则程序的uid就是属主的uid,就是不可变的了,也就无法实现suid的预期效果……
关于suid的理解,这篇博客中的比喻我感觉还是比较容易理解的
http://blog.csdn.net/jxth152913/article/details/5738188