如何保护文件的访问控制

概述

我们需要对存储在计算机中的信息进行保护。这种保护包含两个方面:

  • 避免物理损坏(可靠性的问题,简单的来说是磁盘损坏,文件丢失)
  • 非法访问(保护的问题,简单的来说就是用户没有该文件对应的访问权限,但做了相关的操作。)

访问类型

通过对文件的访问类型加以控制可以实现文件的保护,下面我们就看看常见文件的访问类型有哪些

  • 读: 从文件中读取
  • 写: 写或重写文件
  • 执行: 加载文件到内存中并执行它
  • 附加: 在文件末尾写入新的信息
  • 删除: 删除文件并释放空间以便重复利用。
  • 列表: 列出文件的名称和属性。

其他文件的操作。例如:重命名、复制、编辑。也可以加以控制,通过利用低级的系统调用,来实现这些高级功能。例如:复制,用户只要有读的权限,就可以实现文件的复制。

访问控制

保护最常见方法是,根据用户身份进行控制。基于身份最普通的实现方法是:为每个文件或目录关联一个访问控制列表(ACL), 如下图所示。在ACL中指定每个用户的名称及其允许的访问类型。当用户请求访问该文件时,操作系统去查询该文件所关联的ACL,从ACL中得到用户这次请求的访问类型是否被允许,如果允许则正常操作,否则,操作系统会拒绝用户访问该文件。

(下面的列表0代表不允许 1代表允许)

执行附加删除列表
用户A111111
用户B101000

上面采用ACL能够进行复杂的访问控制,但是ACL的主要问题是他们的长度,这种技术有两个不可取的后果:

  • 构建访问控制列表是个冗长乏味的任务。
  • 目录条目的大小是可变的,会导致更复杂的空间管理。

通过采用精简的访问列表,可以解决这些问题。精简的访问控制列表,主要把用户分为了3大类:

  • 所有者: 创建该文件的用户。
  • 组: 共享文件并且需要类似访问的一组用户。
  • 其他: 系统内的其他文件。

通过把用户分成3大类,上面的访问控制列表。变成如下:

执行附加删除列表
所有者111111
111000
其他100000

当我们新增一个用户的时候,采用复杂的ACL,需要向ACL中添加一行;但是采用精简的ACL,访问控制列表不需要变动,我们可以把新增的用户放入组或者其他中,实现了这个用户对该文件的访问控制。

3. 其他的保护方式

另一个保护的方式是:为每个文件加密码。但是随着文件的增加,记住每个文件的密码将变得极为困难。如果用户将所有密码设置成一样,将失去对文件的保护,因为我们可以通过该密码去访问别的文件。

有些系统允许用户将密码和子目录相关联来解决这个问题。

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值