访问控制系列

news2024/9/23 9:35:28

目录

一、基本概念

1.客体与主体

2.引用监控器与引用验证机制

3.安全策略与安全模型

4.安全内核

5.可信计算基

二、访问矩阵

三、访问控制策略

1.主体属性

2.客体属性

3.授权者组成

4.访问控制粒度

5.主体、客体状态

6.历史记录和上下文环境

7.数据内容

8.决策层次

9.策略扩展


一、基本概念

1.客体与主体

客体是一种蕴涵或接收信息得被动实体。例如,操作系统中的文件、目录、管道、消息、信号量、进程和内存页等,数据库系统中的库、表和字段等,信息网络中的通信线路和计算节点等,都是信息系统中的常见客体。

主体是一种主动实体,它的活动引起信息在客体之间流动。例如,用户、用户组和进程等。在信息系统中,最基本的主体是用户(包括一般用户和系统管理员、系统安全员、系统审计员等特殊用户)。

在操作系统中,进程(包括用户进程和系统进程)一般有着双重身份,它即可能是主体,也可能是客体。当一个进程运行时,它必定直接或间接地为某一用户服务,处理该用户地操作要求,而用户的所有操作请求都要通过进程来代理其进行。进程既是用户行为的客体,又是其访问对象的主体。例如,在编辑一个文件时,编辑器进程代表用户执行文件编辑操作,相当于用户行为,它是客体;而相当于它所编辑的文件,它又是主体。

2.引用监控器与引用验证机制

引用监控器是一种对主体访问客体的行为进行仲裁的抽象装置,是访问控制机制的理论基础。访问控制数据库中存放主体、客体、主体对客体的访问模式等信息,引用监控器以访问数据库中的信息为依据,对主体访问客体的行为进行安全判决。显然,随着主体和客体的产生、删除或其权限的变更,访问控制数据库中的内容要做相应的增删或修改。引用监控器的关键需求是控制主体对客体的每一次访问,并对安全敏感事件进行审计。

引用监控器的具体实现称为引用验证机制,它是实现引用监控起思想的硬件和软件的组合,引用验证机制需要同时满足一下三个原则:

(1)必须具有自我保护能力;

(2)必须总是处于活跃状态;

(3)必须设计得足够小,以利于分析和测试。

第一个原则保证引用验证机制即使受到攻击也能保持自身得完整性;第二个原则保证主体对客体得所有引用,都应得到引用验证机制得仲裁;第三个原则保证引用验证机制得实现是正确的。

3.安全策略与安全模型

安全策略是一种声明,它将系统状态划分为安全态(或称已授权态)和非安全态(或称未授权态)。安全系统是一种始于安全态,且不会进入非安全态的系统。而如果系统进入了非安全态,则称其发生了一次安全破坏。

安全策略由一整套严密的规则组成,这些规则是实施访问控制的依据。说一个信息系统是安全的,是指它满足特定的安全策略。同样进行信息系统的安全设计和开发时,也要围绕一个给定的安全策略进行。许多系统的安全控制失效,主要不是因为程序错误,而是没有明确的安全策略。

安全模型是对安全策略所表达的安全需求得简单、抽象和无歧义得描述。它为安全策略和安全策略的实现机制的关联提供了一种框架。Anderson指出,要开发安全系统首先必须建立系统的安全模型。安全模型给出了安全系统的形式化定义,并且正确地综合系统地各类因素,包括系统的使用方式、使用环境类型、授权定义、共享资源和共享类型等。

4.安全内核

在引用监控器思想的基础上,Anderson定义了安全内核的概念。安全内核是指系统中与安全性实现相关的部分,包括引用验证机制和授权管理机制等部分。安全内核是实现引用监控器概念的一种技术,其理论依据是:在一个大型的操作系统中,仅有一小部分软件是用于安全目的。所以,可用其中与安全相关的软件,来构成操作系统的一个可信内核,称为安全内核。安全内核法是建立安全操作系统的一种最常用的方法。

大多数情况下,安全内核是一个简单的系统,如同操作系统为应用程序提供服务一样,它为操作系统提供服务。而且正如操作系统给应用程序施加限制,安全内核也同样对操作系统施加限制。当安全策略完全由安全内核而不是由操作系统实现时,仍需要操作系统维持系统的正常运行,并防止由于应用程序的致命错误而引发的拒绝服务。但是操作系统和应用程序的任何错误均不能破坏安全内核的安全策略。

5.可信计算基

操作系统的安全依赖于一些具体实施安全策略的可信的软件和硬件。这些软件、硬件和负责系统安全管理的人员一起组成了系统的可信计算基(TCB)。具体来说可信计算基由一下几部分组成。

(1)操作系统的安全内核。

(2)具有特权的程序和命令。

(3)处理敏感信息的程序,如系统管理命令等。

(4)与TCB实施安全策略有关的文件。

(5)其他有关的固件、硬件和设备。这里要求为使系统安全,系统的固件和硬件部分必须能可信地完成它们的设计任务。原因在于固定和硬件故障,可能引起信息的丢失、改变或生产违反安全策略的事件。因此把安全操作系统中的固件和硬件也作为TCB的一部分来看待。

(6)负责系统管理的人员。由于系统管理员的误操作或恶意操作也会引起系统的安全性问题,因此他们也被看做是TCB的一部分。系统安全管理员必须经过严格的培训,并慎重地进行系统操作。

(7)保障固件和硬件正确的程序和诊断软件。

以上所列的TCB的各组成部分中,软件部分是安全操作系统的核心内容,它们完成下述工作:

(1)内核的良好定义和安全运行方式;

(2)标识系统中的每个用户;

(3)保持用户到TCB登录的可信路径;

(4)实施主体对客体的存取控制;

(5)维持TCB功能的正确性;

(6)监视和记录系统中的有关事件。

在一个通用安全操作系统中,TCB是用来构成一个安全操作系统的所有安全保护装置的组合体。一个TCB可以包含多个安全功能,每个安全功能模块实现一个安全策略,这些安全策略共同构成一个安全域,以防止不可信主体的干扰和篡改。

实现安全功能的方法有两种,一种是设置前端过滤器,另一种是设置访问监督器。两者都是在一定硬件基础上,通过软件实现确定的安全策略,并且提供所要求的附件服务。例如作为前端过滤器的安全功能,能防止非法进入系统;作为访问监督器的安全功能,则能防止越权访问,等等。

在单处理机环境的操作系统中,根据系统设计方法的不同,TCB可以是一个安全内核,也可以是一个前端过滤器,或者就是操作系统的关键单元或包括全部操作系统。对于网络环境下的多处理机操作系统,一个安全功能可能跨网络实现,这种情况要比单处理机操作系统更为复杂。这些安全功能协同工作,构成一个物理上分散、逻辑上同一的分布式安全系统,其所能提供的安全策略和附加服务则为各个安全功能的总和。


二、访问矩阵

访问矩阵是以主体标识为行索引、以客体标识为列索引的矩阵,矩阵中的每一个元素表示一组访问权限的集合。

访问矩阵中的一行表示一个主体的所有权限,一列则是关于一个客体的所有访问属性,矩阵中的元素是该元素所在行对应的主体对该元素所在列对应的客体的访问权限。从本质上来说,任何访问控制策略都可以用矩阵直观表示:行对应于主体,列对应于客体,矩阵元素对应于授权。

由于信息系统的资源量和用户数较多,访问矩阵一般庞大而稀疏,如果把整个矩阵保存下来,不仅实现起来不方便,而且效率很低。因此,在实际中,很少用它直接描述或实现访问控制策略。


三、访问控制策略

访问控制策略是在系统安全系统安全较高层次上对方问控制和相关授权的描述,它的表达模型常被称为访问控制模型,是一种访问控制方法的高层抽象和独立于软、硬件实现的概念模型。在制定访问控制策略时,首先要考虑系统的安全性为目标,有的还要求提供可记账和可用性。这些要求,都会影响访问控制策略的制定。此外,在制定访问控制策略时,通常还要考虑如下要素。

1.主体属性

主体属性主要有用户的级别和类别。在信息系统中,可以将用户分为多种普通用户和管理员用户,使之具有组别属性;还可以根据用户的工作职责,赋予其不同角色属性。主体属性还可能包括相关执行程序的性质、所处的网络或物理地址等,它们也可能使授权的依据。例如,很多单位约定,不能从家中访问办公室的资源。在安全性要求更高的情况下,主体属性还可能包括其安全状态。例如,访问控制系统在允许某计算机接入到系统之前,可以首先评估该主机自身健康状况,如果发现其未安装杀毒软件,则认为其感染病毒的概率较大,此时可能不予授权连接。

2.客体属性

客体属性主要有客体的信息级别、可对其执行的操作等。例如,在操作系统中,资源的访问属性有是否可读、是否可写、是否可执行、是否可连接等属性;在普通信息系统中,客体属性还可能包括密级、是否可查询、是否可删除、是否可增加等。在安全性要求更高的情况下,客体属性也可能包括其安全状态。例如,系统可能认为某些客体已经感染计算基病毒或来源不可信,因而不允许用户访问。

3.授权者组成

在信息系统中,可能的授权者包括资源的属主(一般是资源的创建者)和系统管理者。因此,策略的制定,需要考虑资源所有者和系统分别在多大程度参与授权的问题。

4.访问控制粒度

访问控制粒度是指将访问控制中的主体和客体分为不同尺度的实体来实施管理。例如,主体粒度可以分为用户、用户组等;在数据库系统中,客体的粒度可以分为数据库、数据库表、数据记录和数据项等不同粒度。

5.主体、客体状态

主体、客体状态包括它们所处的地点、当前时间和当前受访状态等,例如,一些系统不但不允许单位员工从外部网络访问内部数据,对访问的时间也有限制;并且,当一个客体被多个连接访问时,还可能要求阻止其他连接请求。

6.历史记录和上下文环境

有时,信息系统会要求根据主体曾经访问过的客体、客体的被访问记录和当前状况、被访问客体之间的关系等历史记录和上下文环境,动态地进行访问控制决策。例如,在数据库安全中,有的系统要求仅当主体没有访问过雇员姓名数据,才允许其访问雇员工资数据。

7.数据内容

可以对数据内容作多种分类,并分类实施授权和访问控制。例如,可以按照数值大小或内容性质分类。例如,在数据库访问控制策略中,仅当某项数值大于一定值时,才允许用户查看,这个数值可能是雇员工资、合同金额或考试成绩。

8.决策层次

即要确定在信息系统中地哪个层次上实施访问控制决策。例如,操作系统中存在低层地磁盘读/写和高层地文件读/写指令,计算机网络中包括不同层次地通信协议。在制定访问控制策略时,需要确定该策略在系统地决策层次。

9.策略扩展

访问控制策略应该可以提供一定地可扩展性。这里可扩展性主要是指所扩展的功能能够由已有的系统部件自动实施,所扩展的规则也可以用已有的规则描述。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1934105.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

推荐3款堪称神器的工具软件,实用强大颜值高,你不能错过

Flameshot Flameshot是一款功能强大且易于使用的开源屏幕截图软件,广泛应用于Linux、Windows和macOS等平台。它不仅支持图形界面(GUI)操作,还提供命令行接口(CLI),使得用户可以根据自己的需求选…

SPINDILOMETER:用于多导睡眠图的睡眠纺锤波模型

摘要 通过对近年来睡眠脑电(EEG)信号分析方法的研究,本文提出了一种可集成到多导睡眠图(PSG)设备中的SPINDILOMETER模型,以供PSG电生理信号研究人员、临床睡眠医生和技术人员使用。为此,通过分析PSG中的脑电信号,开发了一个测量睡…

Qt界面假死原因

创建一个播放器类,继承QLabel,在播放器类中起一个线程用ffmpeg取流解码,将解码后的图像保存到队列,在gui线程中调用update()刷新显示。 当ffmpeg打开视频流失败后调用update()将qlabel刷新为黑色,有一定概率会使得qla…

【踩坑日记】【教程】嵌入式 Linux 通过 nfs 下载出现 T T T T [Retry count exceeded: starting again]

文章目录 1 本篇文章解决的问题2 问题解决原理3 问题环境4 开启 ubuntu-20.04 的 nfs24.1 确认 nfs2 是否已经开启4.2 开启 nfs2 5 卸载 iptables5.1 卸载 iptables5.2 禁用 ufw5.3 尝试重新下载 6 原理分析6.1 nfs2 开启部分6.2 卸载 iptables 部分 7 后记7.1 拓扑结构一7.2 拓…

2024辽宁省数学建模B题【钢铁产品质量优化】原创论文分享

大家好呀,从发布赛题一直到现在,总算完成了2024 年辽宁省大学数学建模竞赛B题钢铁产品质量优化完整的成品论文。 本论文可以保证原创,保证高质量。绝不是随便引用一大堆模型和代码复制粘贴进来完全没有应用糊弄人的垃圾半成品论文。 B题论文…

C++ 几何计算库

代码 #include <iostream> #include <list> #include <CGAL/Simple_cartesian.h> #include <CGAL/AABB_tree.h> #include <CGAL/AABB_traits.h> #include <CGAL/AABB_segment_primitive.h> #include <CGAL/Polygon_2.h>typedef CGAL…

数学建模(1)

论文&#xff1a;做流程图 论文查重不能高于30% 论文 分模块备战 摘要不能超过一页的四分之三 数学建模的六个步骤: 【写作】---学术语言 团队练题

【hadoop大数据集群 2】

【hadoop大数据集群 2】 文章目录 【hadoop大数据集群 2】1. 虚拟机克隆2. 时间同步3. 环境变量配置、启动集群、关闭集群 1. 虚拟机克隆 克隆之后一定要重新生成新虚拟机唯一的MAC地址和UUID等&#xff0c;确保新虚拟机与源虚拟机在网络拓扑中不发生冲突。 注意1.生成新的MA…

新华三H3CNE网络工程师认证—VLAN使用场景与原理

通过华三的技术原理与VLAN配置来学习&#xff0c;首先介绍VLAN&#xff0c;然后介绍VLAN的基本原理&#xff0c;最后介绍VLAN的基本配置。 一、传统以太网问题 在传统网络中&#xff0c;交换机的数量足够多就会出现问题&#xff0c;广播域变得很大&#xff0c;分割广播域需要…

借力Jersey,铸就卓越RESTful API体验

目录 maven 创建 jersey 项目 运行 支持返回 json 数据对象 1. 引言 在当今数字化时代&#xff0c;API&#xff08;应用程序编程接口&#xff09;已成为连接不同软件系统和服务的桥梁。RESTful API以其简洁、轻量级和易于理解的特点&#xff0c;成为了API设计的首选标准。本…

甲骨文面试题【动态规划】力扣377.组合总和IV

给你一个由 不同 整数组成的数组 nums &#xff0c;和一个目标整数 target 。请你从 nums 中找出并返回总和为 target 的元素组合的个数。 题目数据保证答案符合 32 位整数范围。 示例 1&#xff1a; 输入&#xff1a;nums [1,2,3], target 4 输出&#xff1a;7 解释&#x…

C语言:键盘录入案例

主要使用了scanf&#xff1b; scanf的使用方法和注意事项&#xff1a; 1.作用&#xff1a; 用于接收键盘输入的数据并赋值给对应的变量 2.使用方式; scanf("占位符",&变量名); 3.注意事项; 占位符后面的的变量要对应 第一个参数中不写换行 案例1&#xf…

夏令营入门组day5

目录 一. 城市距离 二. 史莱姆 一. 城市距离 &#xff08;1&#xff09;思路 每次询问&#xff0c;对于每一个点都判断与下一个点是否为临近点会超时&#xff0c;因此预处理&#xff0c;预先判断每一个点的临近点&#xff0c;然后将花费存入前缀和数组&#xff0c;这样在每次询…

GraphRAG:一种新型的RAG技术

微软前几天发布的 GraphRAG 架构非常厉害&#xff0c;但是具体的原理和内容可能不太好理解。Neo4j 的 CTO 写了一篇详细的文章《GraphRAG 宣言&#xff1a;为 GenAI 增加知识》&#xff0c;通俗易懂的介绍了 GraphRAG 的原理、与传统 RAG 的区别、GraphRAG的优势、知识图谱的创…

lua 游戏架构 之 LoaderWallet 异步加载

定义了一个名为LoaderWallet class&#xff0c;用于管理资源加载器&#xff08;Loader&#xff09;。这个类封装了资源加载的功能&#xff0c;包括异步加载&#xff0c;以及资源的释放和状态查询。下面是对代码的详细解释&#xff1a; ### 类定义和初始化 这里定义了一个名为…

初学者对 WebGL 与 WebGPU 的看法(A Beginner’s Perspective of WebGL vs WebGPU)

初学者对 WebGL 与 WebGPU 的看法&#xff08;A Beginner’s Perspective of WebGL vs WebGPU&#xff09; WebGL 和 WebGPU 之间的主要区别&#xff1a;WebGL 是什么以及它适合哪些人使用&#xff1f;WebGPU 是什么&#xff1f;它适合谁使用&#xff1f;WebGL 和 WebGPU 的代码…

spring事件发布器ApplicationEventPublisher的使用

1、前言 spring中有一个事件发布器,使用了观察者模式,当有事件发布的时候,事件监听者会立刻收到发布的事件。今天我们来介绍下这个事件发布器怎么使用。 2、简单使用 2.1、创建事件实体类 事件实体类需要继承ApplicationEvent。我们模拟老师发布事件的诉求。 public class T…

【51项目】基于51单片机protues交通灯的设计(完整资料源码)

基于51单片机protues交通灯的设计 一、 项目背景 1.1背景 随着科技的不断发展&#xff0c;LED技术在交通领域的应用越来越广泛。LED模拟交通灯作为一种新型的交通信号控制设备&#xff0c;以其高效、节能、环保等优点&#xff0c;逐渐取代了传统的交通信号灯。近年来&#xff…

【人工智能】Transformers之Pipeline(三):文本转音频(text-to-audio/text-to-speech)

​​​​​​​ 一、引言 pipeline&#xff08;管道&#xff09;是huggingface transformers库中一种极简方式使用大模型推理的抽象&#xff0c;将所有大模型分为音频&#xff08;Audio&#xff09;、计算机视觉&#xff08;Computer vision&#xff09;、自然语言处理&#x…

【深度学习入门篇 ⑨】循环神经网络实战

【&#x1f34a;易编橙&#xff1a;一个帮助编程小伙伴少走弯路的终身成长社群&#x1f34a;】 大家好&#xff0c;我是小森( &#xfe61;ˆoˆ&#xfe61; ) &#xff01; 易编橙终身成长社群创始团队嘉宾&#xff0c;橙似锦计划领衔成员、阿里云专家博主、腾讯云内容共创官…