用户ID与文件访问权限
来源:互联网 发布:多米音乐mac版下载 编辑:程序博客网 时间:2024/05/17 00:03
一.与进程相关联的ID
与进程相关的ID有6种,分别是实际用户ID,实际组ID,有效用户ID,有效组ID,设置用户ID与设置组ID。
实际用户ID,实际组ID标记我们实际上是谁,一般在用户登录是确定,比如Zhangsan登录了linux,则实际用户就是Zhangsan。
有效用户ID,有效组ID用于文件访问权限检查,在没有设置用户ID/设置组ID的情况下,有效用户ID等同于实际用户ID,有效用户ID/有效组ID在用于文件访问权限检查时,决定了该用户有没有该文件的访问权限。比如root新建了一个文件,文件所有者、所属组均是root,且没有设置用户ID/设置组ID,那么Zhangsan登录Linux后,此时实际用户是Zhangsan,有效用户ID也是Zhangsan,它不是文件的所有者,也不是文件的所属组,那么Zhangsan就不能访问该文件。
当执行一个程序文件时,进程的有效用户ID通常就是实际用户ID,有效组ID通常是实际用户ID。但是若该文件添加了设置用户ID或设置组ID后,可以使得在执行该文件时,进程的有效用户ID/有效组ID变成文件的所有者用户ID/文件的所属组ID。例如,passwd是root权限,按理说只有root才能执行、修改passwd。但是普通用户也可以修改自己的密码,其原因就在于可执行程序passwd有设置用户ID,普通用户在执行passwd时,可以取得passwd所有者即root的权限。可以 ls -l /usr/bin/passwd 查看passwd权限:
-rwsr-xr-x 1 root root 47032 1月 27 2016 /usr/bin/passwd
r,w,x分别代表读、写、执行。s代表的就是设置用户ID或设置组ID,在passwd中,这里是设置用户ID
二.文件访问权限
1.目录:
在对一个目录有执行权限后,才能进入该目录
只有在对一个有写权限后,才能删除该目录下的文件,或在该目录下添加文件,更改文件
在对目录有读权限后,才能查看该目录下的文件,即可以使用ls命令
2.文件:
1).当我们打开某文件时,首先要对该文件所在的每一个目录有执行权限,即首先需要有权限进入该文件所在的目录
2).在对文件有读权限时,我们才可以读一个文件,例如用open函数以只读或读写等方式打开文件
3).在对文件有写权限时,才可以写入文件,添加内容
4).在对文件有执行权限时,才可以执行这个可执行文件
在进程每次打开、创建、或删除一个文件时,内核就会执行文件访问权限测试,具体如下:
1).若进程的有效用户ID是0,即是root,则可访问
2).若进程的有效用户ID等于文件的所有者ID,则文件所有者的适当的访问权限位被设置后,允许访问该文件。
3).若进程的有效组ID等于文件的组ID,则若文件所属组的适当的访问权限被设置后,允许访问该文件
4).若文件的其他用户适当的访问权限被设置,则允许访问,否则拒绝访问。
- 用户ID与文件访问权限
- 进程与文件访问权限 几个关联的用户ID
- 关于Linux文件访问权限与设置用户id位
- 用户ID,组ID 文件访问权限,文件与进程属性浅析
- 文件权限与进程ID
- 文件类型、文件用户ID组ID、文件访问许可
- 权限与命令间的关系(用户访问文件的基本权限)
- Unix 设置用户ID和文件访问权限
- 用户身份与文件权限
- MongoDB 用户与访问权限控制简介
- Linux进程的用户id,有效用户id与文件对应的所有者id,组id
- 【文件管理】访问权限与文件安全性
- access and faccessat 按照实际用户Id和实际组ID进行文件权限测试
- Linux文件权限之设置用户ID和设置组ID(即SUID和SGID)
- 自定义用户访问权限
- linux中用户、用户组与文件权限
- Linux-文件访问权限含义与chmod
- LINUX下的用户访问授权,文件权限
- 极客学院内部首发唯一完整实战微信小程序培训课程,现在免费赠送(价值500
- 一个好玩的表白小程序
- Ural 1004 FLOYD最小环问题
- spring
- Hibernate 学习教程
- 用户ID与文件访问权限
- 【HTML5】SVG SMILE
- matchTemplate
- 使用 Node.js 和 Express.js 搭建简易 HTTP/2 服务器
- 面向对象的总结
- AssetDatabase
- saltstack-----state.sls引用grains
- node.js开发错误——Error: Connection strategy not found
- Android--简单应用