访问控制技术原理与应用
目录
- 访问控制概述
- 实现访问控制目标
- 访问控制参考模型
- 常见访问控制模型
- 访问控制模型-DAC自主访问控制
- 访问控制模型-MAC强制访问控制
- 访问控制模型-RBAC基于角色的访问控制
- 访问控制模型-ABAC基于属性的访问控制
访问控制概述
访问控制是对资源对象的访问授权控制的方法以及运行机制
访问控制又叫访问者,又称为主体,他可以是我们的用户,也可以是系统的进程或者应用程序,资源对象又称为客体,他是被访问的对象,可以是文件应用服务或者数据,另外两个关键字授权和控制
它指的是访问者可以对资源对象进行访问的方式,是读、写、删除或者是有其他的这种权力,不同的用户群体权力是不一样的
就对访问者是否允许用户访问的资源对象做出决策,本来是只可以读的用户,你搞一个可以写的文件,这个肯定是有问题的,我们做出的决策可以是拒绝访问,或者是允许、禁止操作,根据我们相应的权限来对我们访问的过程进行控制
访问控制的目标有两个,第一个防止非法的用户进入系统,通过认证进入我们的系统,第二个阻止合法用户对系统资源非法的访问,以及禁止合法用户的越权访问,你本来只能读的,你就不能写,这就是访问控制的目标
实现访问控制目标
首先要对用户进行身份认证,然后根据不同的用户授予不同的访问权限。第二个就是授权,从而保护系统的资源,同时还可以进行系统的安全审计和监控检测,检测用户对系统的攻击企图,我们的审计一般是事后的,我们来做分析,所以实际的应用当中一般是访问控制,他会与认证、授权、审计机制相互去协同使用,这是访问控制跟其他安全机制的一个关系,前置有一个认证,后置有一个审计,中间是访问控制,这三个是经常联合起来用的

访问控制参考模型

主体比如说是我,文件就是客体,中间有访问控制数据库、参考监视器、审计库这三个东西来控制我们访问的,参考监视器,具体能不能访问是在这里去执行和决策的,相当于它就是一个判断机制,根据我们的访问控制数据库去判断能不能访问,访问控制数据库它里面存的是一些访问控制的策略,比如说,我能访问这个文件吗,是能读还是能写,审计库主要是存储我们操作的信息,比如说访问成功或者失败、连续失败,比如说我在访问这个文件,可能需要密码,我尝试了一万遍,都没有成功,最后我们审计库里面是不是会有记录,证明我可能是攻击者,我在攻击这个文件,我想去获得越权的访问,但是没成功,所以审计库记录下这些信息可以供我们管理员来进行安全的防护、安全的加固
常见访问控制模型

常见的访问控制模型有这几种,重点理解的是标黄的这几种,其中重点是自主访问控制、强制访问控制和基于角色的访问控制模型,他们常被用于操作系统、数据库等等这些资源的访问
基于属性的访问控制模型,比如张三是个男人,这个就是属性,像女厕所肯定只有女人能进,男人进不了
基于行为的访问控制模型,常见的上网管理,它可以对我们的用户一些行为进行控制,比如你要浏览非法的网站,他给你阻止了,干违法的操作把你阻止了,比如说典型的上网行为管理、电子支付等等
基于时间的访问控制,我们写acl的时候,可以写time range,时间范围,比如,我上班的时候不能聊QQ,不能下迅雷,不能看在线的视频,但是你下下来就可以随便看
访问控制模型-DAC自主访问控制
自主访问控制(Discretionary Access Control,DAC)指客体的所有者按照自己的安全策略授予系统中的其他用户对其的访问权,他实现方式有两大类,基于行的访问控制和基于列的自主访问控制

自主访问控制是最常用的一种对网络资源进行访问约束的机制,其好处是用户自己根据其安全需求,自行设置访问控制权限,访问机制简单、灵活。但这种机制的实施依赖于用户的安全意识和技能,不能满足高安全等级的安全要求。例如,网络用户由于操作不当,将敏感的文件用电子邮件发送到外部网则造成泄密事件。所以在一些高安全场景不太适用
访问控制模型-MAC强制访问控制
强制访问控制(MAC)是指根据主体和客体的安全属性,以强制方式控制主体对客体的访问。安全操作系统中的每个进程、每个文件等客体都被赋予了相应的安全级别和范畴,当一个进程访问一个文件时,系统调用强制访问控制机制,当且仅当进程的安全级别不小于客体的安全级别,并且进程的范畴包含文件的范畴时,进程才能访问客体,否则就拒绝。
我们现在常用的一些操作系统,他底层都是有用强制访问控制的
与自主访问控制相比较,强制访问控制更加严格,用户使用自主访问控制虽然能够防止其他用户非法入侵自己的网络资源,但对于用户的意外事件或误操作则无效,因此,自主访问控制不能适应高安全等级需求。在政府部门、军事和金融等领域,常利用强制访问控制机制,将系统中的资源划分安全等级和不同类别,然后进行安全管理。
访问控制模型-RBAC基于角色的访问控制
基于角色的访问控制(RBAC)是目前国际上流行的先进的安全访问控制方法。它通过分配和取消角色来完成用户权限的授予和取消,并且提供角色分配规则。RBAC包括用户(U)、角色®、会话(S)和权限§四个基本要素。
不同的角色,他的权限是不一样的,你也可以理解成不同的分组,他的权限也不一样,像我们windows里面,他其实有很多用户组,administrator超级管理员、user、power、back-up 备份,这些就是用户组,其它对应的就是角色
角色简单理解就是用户组,我们通过用户组来集中的授权,我们权限管理就会简单很多,比如我这个系统里面有1千个用户,我要实现1千个用户的一个授权管理,对1千个用户进行操作是不是很麻烦,但是我如果把1千个用户划分成不同的角色,一个是管理员,一个是访客,或者三个,还有一个是内部工作人员,相当于只是对三个角色的权限进行划分,整个操作就简单很多,这是基于角色的访问控制,应用非常广泛
访问控制模型-ABAC基于属性的访问控制

基于属性的访问控制(ABAC):访问控制方法是根据主体的属性、客体的属性、环境的条件以及访问控制策略对主体的请求操作进行授权许可或拒绝。
比如说有些电影要求我们满18岁才能看,这个电影是涉及到暴力血腥,这里面我们对主体属性的要求是你要大于等于18岁,客体属性就是暴力血腥这一类的,如果小于18岁,肯定拒绝,这个是基于属性的访问控制,相对而言,他会比较灵活,可以根据我们主客体的属性去自定义,第一个是自主访问控制,第二个是强访问控制,第三个基于决策的访问控制
相关文章:
访问控制技术原理与应用
目录 访问控制概述实现访问控制目标访问控制参考模型常见访问控制模型访问控制模型-DAC自主访问控制访问控制模型-MAC强制访问控制访问控制模型-RBAC基于角色的访问控制访问控制模型-ABAC基于属性的访问控制 访问控制概述 访问控制是对资源对象的访问授权控制的方法以及运行机…...
详解Rust标准库:Vec向量
查看本地官方文档 安装rust后运行 rustup doc查看The Standard Library即可获取标准库内容 std::vec::Vec定义 Vec除了可以作为动态数组还可以模拟为一个栈,仅使用push、pop即可 Vec默认分配在堆上,对于一个容量为4,有两个元素a、b的向量…...
网络原理(初一,TCP/IP五层(或四层)模型面试问题)
TCP/IP五层(或四层)模型 TCP/IP是⼀组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇。 TCP/IP通讯协议采⽤了5层的层级结构,每⼀层都呼叫它的下⼀层所提供的⽹络来完成⾃⼰的需求。 • 应⽤层:负责…...
Unity引擎材质球残留贴图引用的处理
大家好,我是阿赵。 这次来分享一下Unity引擎材质球残留贴图引用的处理 一、 问题 在使用Unity调整美术效果的时候,我们很经常会有这样的操作,比如: 1、 同一个材质球切换不同的Shader、 比如我现在有2个Shader,…...
Flutter鸿蒙next中封装一个列表组件
1. 创建Flutter项目 首先,确保你已经安装了Flutter SDK,并创建一个新的Flutter项目: flutter create podcast_app cd podcast_app2. 封装列表组件 我们将在lib目录下创建一个新的文件,命名为podcast_list.dart,用于…...
层次与网络的视觉对话:树图与力引导布局的双剑合璧
目录 目的内容树图绘制目的步骤参考代码结果与分析 力引导布局算法目的参考代码结果与分析 总结 目的 掌握常用可视化软件与工具:学习和熟练使用常用的数据可视化软件和工具,如Matplotlib、Seaborn、Plotly、Tableau等。这些工具提供了用于创建图表、图…...
python将数据集中所有文件名升序制作txt文件(医学影像)
import os import re # 设定图像文件所在的路径 img_path ./2d/images/ #需修改路径 # 获取该路径下的所有文件名 img_list os.listdir(img_path) # 过滤出以.nii结尾的文件名 nii_list [f for f in img_list if f.endswith(.nii)] # 使用正则表达式从文件名中提…...
【The Art of Unit Testing 3_自学笔记06】3.4 + 3.5 单元测试核心技能之:函数式注入与模块化注入的解决方案简介
文章目录 3.4 函数式依赖注入技术 Functional injection techniques3.5 模块化依赖注入技术 Modular injection techniques 写在前面 上一篇的最后部分对第三章后续内容做了一个概括性的梳理,并给出了断开依赖项的最简单的实现方案,函数参数值注入法。本…...
【VSCode】配置
安装插件 C vscode-icons gdb调试 https://www.bilibili.com/video/BV15U4y1x7b2/?spm_id_from333.999.0.0&vd_sourcedf0ce73d9b9b61e6d4771898f1441f7f https://www.bilibili.com/video/BV1pU4y1W74Z?spm_id_from333.788.recommend_more_video.-1&vd_sourcedf0…...
Linux 常用命令整理大全及命令使用心得
本文章是为了总结自己用过的命令,以及一些心得,网上有很多类似的,但自己总结才能更好的理解。 文章目录 一、文件和目录管理01、 ls :列出目录内容02、cd:更改当前目录03、pwd:显示当前工作目录04、mkdir&a…...
计算器的实现
计算器的⼀般实现 计算器的一般实现:优化:使⽤函数指针数组的实现: 计算器的一般实现: #include <stdio.h> int add(int a, int b) {return a b; } int sub(int a, int b) {return a - b; } int mul(int a, int b) {retur…...
这个工具帮你快速实现数据集成和同步
在这个信息爆炸的时代,数据的流动和同步逐渐成为企业运营的命脉。然而,企业正面临着前所未有的数据挑战,无论是跨地域的分公司协作,还是云服务与本地数据库的交互,数据的集成、清洗、转换和加载(ETL&#x…...
论文阅读:Computational Long Exposure Mobile Photography (一)
这篇文章是谷歌发表在 2023 ACM transaction on Graphic 上的一篇文章,介绍如何在手机摄影中实现长曝光的一些拍摄效果。 Abstract 长曝光摄影能拍出令人惊叹的影像,用运动模糊来呈现场景中的移动元素。它通常有两种模式,分别产生前景模糊或…...
项目解决方案:多地连锁药店高清视频监控系统建设解决方案(设计方案)
目录 一.项目背景 1.1背景描述 1.2需求分析 二.设计依据和建设目标 2.1设计依据 2.2建设目标 三.系统设计实现 3.1系统方案设计 3.2网络组网说明 四.建设系统特色 4.1安全性 4.2节约建设成本 4.3原有资源的再利用 4.4可扩展性 五.产品介绍 5.1概述 5.2设备…...
utf-8、pbkdf2_sha
#utf-8加密、解密 import base64 base64.b64encode(lienlien123.encode(utf-8)) bbGllbmxpZW4xMjM base64.b64decode(bbGllbmxpZW4xMjM.decode(utf-8)) blienlien123 #pbkdf2_sha加密,校验 # 该种密码在不同时刻会有产生不同的加密结果 # 该加密方法使用的是散列…...
Java之包,抽象类,接口
目录 包 导入包 静态导入 将类放入包 常见的系统包 抽象类 语法规则 注意事项: 抽象类的作用 接口 实现多个接口 接口间的继承 接口使用实例 (法一)实现Comparable接口的compareTo()方法 (法二)实现Comp…...
HarmonyOS鸿蒙开发入门,常用ArkUI组件学习(二)
书接上回,让我们继续来学习ArkUI的其他组件 目录,可以点击跳转到想要了解的组件详细内容 组件四:Button组件五:Slider组件六: Column & Row组件七:循环控制组件八: List 组件四:…...
斩!JavaScript语法进阶
一、DOM 概述 DOM 是 JavaScript 操作网页的接口,全称为“文档对象模型”(Document Object Model)。当网页被加载时,浏览器将网页转为一个DOM,并用JS进行各种操作。比如:改变页面中的HTML 元素及其属性&am…...
UFO:Windows操作系统的具象智能代理
近年来,随着AI技术的发展,智能代理在各种应用中扮演着越来越重要的角色。微软推出的UFO(User-Focused Operator)正是这样一个出色的多代理框架,旨在通过无缝导航和操作,满足用户在Windows操作系统中跨多个应…...
win10/11无休眠设置和断电后电池模式自动休眠而不是睡眠-用以省电
1、打开休眠设置选项 打开控制面板\所有控制面板项\电源选项\ 左侧的选择电源按钮的功能 默认状态没有休眠 1、管理员权限打开cmd或者power shell 2、输入一下指令,打开休眠选项 powercfg -hibernate on关闭后重新打开 控制面板\所有控制面板项\电源选项\左侧的选…...
Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真
目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销,平衡网络负载,延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...
在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能
下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...
SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...
CMake基础:构建流程详解
目录 1.CMake构建过程的基本流程 2.CMake构建的具体步骤 2.1.创建构建目录 2.2.使用 CMake 生成构建文件 2.3.编译和构建 2.4.清理构建文件 2.5.重新配置和构建 3.跨平台构建示例 4.工具链与交叉编译 5.CMake构建后的项目结构解析 5.1.CMake构建后的目录结构 5.2.构…...
[ICLR 2022]How Much Can CLIP Benefit Vision-and-Language Tasks?
论文网址:pdf 英文是纯手打的!论文原文的summarizing and paraphrasing。可能会出现难以避免的拼写错误和语法错误,若有发现欢迎评论指正!文章偏向于笔记,谨慎食用 目录 1. 心得 2. 论文逐段精读 2.1. Abstract 2…...
[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数 在软件开发中,单例模式(Singleton Pattern)是一种常见的设计模式,确保一个类仅有一个实例,并提供一个全局访问点。在多线程环境下,实现单例模式时需要注意线程安全问题,以防止多个线程同时创建实例,导致…...
Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)
Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习) 一、Aspose.PDF 简介二、说明(⚠️仅供学习与研究使用)三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...
论文笔记——相干体技术在裂缝预测中的应用研究
目录 相关地震知识补充地震数据的认识地震几何属性 相干体算法定义基本原理第一代相干体技术:基于互相关的相干体技术(Correlation)第二代相干体技术:基于相似的相干体技术(Semblance)基于多道相似的相干体…...
