设计权限读写系统的思想

读写权限系统的设计思想,可以借鉴linux 系统的实现方式


linux 是如此实现的:
(1)首先,Linux 系统会判断这个用户是否是root 用户,如果是root 用户就可以直接
存取(访问)文件(或目录)而不受文件(或目录)本身的权限限制。
(2)如果不是root 用户,系统会比较这个用户的uid 和文件上的uid。如果用户的uid
与文件上的uid 相同就表示这个用户是该文件的所有者(owner),那么系统就会按这个文
件上所有者权限的设定来让这个用户存取该文件。
(3)如果也不是owner,系统就会继续比对这个用户的gid 和文件上的gid。如果用户
的gid 与文件上的gid 相同就表示这个用户与该文件的owner 是同一个group 的成员,那么
系统就会按这个文件上group 权限的设定来让这个用户存取该文件。
(4)如果这个用户与这个文件的owner 也不是同一个group 的成员,那么系统就会按
这个文件上other 权限的设定来让这个用户存取该文件。
如果是一个女强人的单亲妈妈带一个孩子,她为了工作请来一个全职保姆。现在这个
小孩子就相当于文件,单亲妈妈就相当于owner,而小保姆就相当于同组的一个成员。孩
子上学的小学规定:为了安全起见,每天下学孩子必须有人接。现在可以把小学校看成系
统。当放学时,如果是孩子的妈妈接,当然没有问题了,这就相当于系统发现她与这孩子
(文件)的uid 相同。如果是她家的小保姆接也没问题,因为这就相当于系统发现她与这
孩子(文件)的gid 相同。
那么又怎样理解系统对 root 用户的操作过程呢?设想一下,某一天这个家庭出了一件
大事,孩子的妈妈和小保姆都无法来接这个孩子了,但是公安局的警察来接他了,此时学
第7 章用户、群组和权限
·243·
校(系统)当然要放行了

猜你喜欢

转载自annan211.iteye.com/blog/2071813