上周上信息安全的课,老师留了个Biba模型的作业。自己看书了解了一下,记录如下。

参考资料:石文昌《信息系统安全概论第2版》 ISBN:978-7-121-22143-9

Biba模型是毕巴(K.J.Biba)在1977年提出的完整性访问控制模型,它是一个强制访问模型。在介绍Biba模型之前,先说一下访问控制分类。

访问控制分类

访问控制的主要作用是让得到授权的主体访问客体,同事阻止没有授权的主体访问客体。根据客体的拥有者是否具有决定“该客体是否可以被访问”的自主权,访问控制可以划分为自主访问控制(DAC,Discretionary Access Control)和强制访问控制(MAC,Mandatory Access Control)两种类型。

  1. 自主访问控制
    如果作为客体的拥有者的用户个体可以通过设置访问控制属性来准许或拒绝该客体的访问,那么这样的访问控制成为自主访问控制。
    举例说明,在学校里,每个同学都可以按照自己的意愿决定是否允许其他同学借阅自己的课本,这就属于一种DAC,这里,课本相当于客体,同学相当于用户,同时也是主体,借阅操作相当于一种访问操作。
  2. 强制访问控制
    如果只有系统才能控制对客体的访问,而用户个体不能改变这种控制,那么这样的访问控制称为强制访问控制。
    这个定义强调,普通用户是不能按照个人意愿决定对客体的访问授权的,不管他是不是该客体的拥有者,只有系统才拥有这种决定权。
    举例说明,在学校里,考试时,任何同学都无权决定把自己的试卷借给其他同学看,这是学校的规定,属于强制访问控制,其中,试卷相当于客体,同学相当于用户(即主体),学校相当于系统。

完整性级别

毕巴模型用完整性级别来对完整性进行量化描述。设i­1和i2是任意两个完整性级别,如果完整性级别为i2的实体比完整性级别为i1的实体具有更高的完整性,则称完整性级别i2绝对支配完整性级别i1,记为:

i1 < i2

毕巴模型定义了信息传递路径的概念。

执行操作(规则1

①  
当且仅当i(O) ≤ i(S),主体S可以写客体O。

②  
当且仅当i(S2) ≤ i(S1),主体S1可以执行S2

读操作

对于“读”操作,通过定义不同的规则,毕巴模型呈现为三种略有不同的形式。

  1. 毕巴低水标模型(Low-Water-Mark)
    设S是任意主体,O是任意客体,imin = min(i(S), i(O)),那么,不管完整性级别如何,S都可以读O,但是“读”操作执行后,S的完整性级别被调整为imin
  2. 毕巴环模型(Ring)
    不管完整性级别如何,任何主体都可以读任何客体。
  3. 毕巴严格完整性模型(Strict Integrity)
    在满足规则1的基础上,当且仅当i(S) ≤ i(O),主体S可以读客体O。在严格完整性模型中,当且仅当主体和客体拥有相同的完整性级别时,主体可以同时对客体进行“读”和“写”操作。

通常,提及毕巴模型,一般都是指毕巴严格完整性模型。

Biba模型简介的更多相关文章

  1. Sequelize 关系模型简介

    Sequelize 关系模型简介 先介绍一下本文用到的术语: 源: 调用 sequelize 中关系方法的调用者 目标: 调用 sequelize 中关系方法中的参数 比如, User.hasOne( ...

  2. jvm-垃圾回收gc简介+jvm内存模型简介

    gc是jvm自动执行的,自动清除jvm内存垃圾,无须人为干涉,虽然方便了程序员的开发,但同时增加了开发人员对内存的不可控性. 1.jvm内存模型简介 jvm是在计算机系统上又虚拟出来的一个伪计算机系统 ...

  3. CSS box-flex属性,然后弹性盒子模型简介

    今天做项目的时候发现一个css3的新属性flex 一.什么是flex 它的作用是能够按照设置好的规则来排列容器内的项目,而不必去计算每一个项目的宽度和边距.甚至是在容器的大小发生改变的时候,都可以重新 ...

  4. 转:概率主题模型简介 --- ---David M. Blei所写的《Introduction to Probabilistic Topic Models》的译文

    概率主题模型简介 Introduction to Probabilistic Topic Models      转:http://www.cnblogs.com/siegfang/archive/2 ...

  5. ORM模型简介

    ORM模型简介 1>什么是ORM? ORM,即 Object-Relational Mapping(对象关系映射),它的作用是在关系型数据库和业务实体对象之间作一个映射,这样,我们在操作具体的 ...

  6. spring 事件驱动模型简介

    事件驱动模型简介 事件驱动模型也就是我们常说的观察者,或者发布-订阅模型:理解它的几个关键点: 首先是一种对象间的一对多的关系:最简单的如交通信号灯,信号灯是目标(一方),行人注视着信号灯(多方): ...

  7. SNF快速开发平台2019-权限管理模型简介-权限都在这里

    1.1    权限的概念 权限是指为了保证职责的有效履行,任职者必须具备的,对某事项进行决策的范围和程度.它常常用“具有批准……事项的权限”来进行表达.例如,具有批准预算外5000元以内的礼品费支出的 ...

  8. Linux 网络 I/O 模型简介(图文)(转载)

    Linux 网络 I/O 模型简介(图文)(转载) 转载:http://blog.csdn.net/anxpp/article/details/51503329 1.介绍 Linux 的内核将所有外部 ...

  9. css盒模型简介

    如何了解盒模型 盒模型简介:盒模型是css布局的基石,它规定了网页元素如何显示以及元素间相互关系.css定义所有的元素都可以拥有像盒子一样的外形和平面空间. 盒模型的组成:内容区.补白/填充.边框.边 ...

随机推荐

  1. c语言结构体指针初始化

    今天来讨论一下C中的内存管理. 记得上周在饭桌上和同事讨论C语言的崛起时,讲到了内存管理方面 我说所有指针使用前都必须初始化,结构体中的成员指针也是一样 有人反驳说,不是吧,以前做二叉树算法时,他的左 ...

  2. Java生成唯一GUID UUID

    GUID(Global unique identifier)全局唯一标识符,它是由网卡上的标识数字(每个网卡都有唯一的标识号)以及 CPU 时钟的唯一数字生成的的一个 16 字节的二进制值. GUID ...

  3. php微信开发(1):缓存access_token的方法

    语言:PHP access_token一直要用,但每天取的数量有限制.反正2小时才过期.就想缓存一下. File1: wx_access_token.php File2: file_cache.php ...

  4. Python脚本控制的WebDriver 常用操作 <十五> 处理Navigation Bar

    下面将使用WebDriver来模拟操作:选择一个Navigation bar的选项 测试用例场景 Navigation Bar可以看作是简单的类似于tab的导航栏.一般来说导航栏都是ul+li.先定位 ...

  5. Sublime Text博客插件 --- iblog

    iblog是一款 sublime 博客插件,目前只支持cnblog. 项目地址:https://github.com/iskeeter/iblog 功能介绍 新建和更新cnblog的博客 支持mark ...

  6. 微软职位内部推荐-Senior Dev Lead

    微软近期Open的职位: Bing Index Serve team is hiring! We are one of the core teams in Bing serving more than ...

  7. Disable keyboard input on Android TimePicker

    try to use: myTimePicker.setDescendantFocusability(TimePicker.FOCUS_BLOCK_DESCENDANTS); to disable f ...

  8. android 开发不能创建目录

    原来代码: File tempDir = new File(path); //path 是一个参数 if (!tempDir.exists()) { try { tempDir.mkdir(); // ...

  9. mysql innodb 引擎

    innodb 引擎 一.概述 InnoDB 是一个用的比较广泛的存储引擎,因为它支持事物和外键,还有不错的效率;我们先看看官方教程怎么说; 我们先读一下, 对于上面的文档, 对一个InnoDB的表首先 ...

  10. angular入门系列教程1

    主题: 一个能够跑起来的页面,神奇的效果,无需一样JS代码! 效果图: 细节: 当然,这里甚至连登陆都没做,只是看到神奇的当输入用户名或者密码的时候,下面的预览区域也会有相应的更改.没有一行的JS代码 ...