上周上信息安全的课,老师留了个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. EasyUI_Datagrid学习总结

    EasyUI_Datagrid学习总结 2016年7月25日星期一 一.简介 Easyui中的datagrid从总的作用上讲,就是在列表上显示数据,类似于table,但是在table的基础上,此控件更 ...

  2. Crusher Django 学习笔记4 使用Model

    http://crusher-milling.blogspot.com/2013/09/crusher-django-tutorial4-using-basic.html 顺便学习一下FQ Crush ...

  3. PHP获取Cookie模拟登录CURL

    要提取google搜索的部分数据,发现google对于软件抓取它的数据屏蔽的厉害,以前伪造下 USER-AGENT 就可以抓数据,但是现在却不行了.利用抓包数据发现,Google 判断了 cookie ...

  4. 无DLL线程注入

    注意要在release方式编译 //线程函数 DWORD WINAPI RemoteThreadProc(LPVOID lpParam) {      PDATA pData = (PDATA)lpP ...

  5. 使用android.support.design.widget.TabLayout出现java.lang.reflect.InvocationTargetException

    解决方法: 1.在res里面的Values里面的styles定制一个自己的colorPrimary <style name="MyAppTheme" parent=" ...

  6. 通过 Javacore 了解线程运行状况

    Javacore 是一个当前 JVM 运行状态的快照.通过对Javacore 的分析,可以了解在 JVM 中运行的应用程序的当前状态,比如是否“卡”在某一点上,或在某些代码上运行时间太长. Javac ...

  7. python自学笔记二

    :#进入循环重输文0件名 pass else:#退出循环,等待创建 break fobj = open(fname,'a')#打开或创建文件 #接下来写入文件 all = [] print('ente ...

  8. 【译】Android系统简介

    简介  本文主要介绍Android的基础知识和体系结构,本文主题: 简介什么是Android,为什么开发者需要关注Android: Android体系结构(如Linux Kernel, Librari ...

  9. session 测试用例详解

    http协议是WEB服务器与客户端(浏览器)相互通信的协议,它是一种无状态协议.所谓无状态,指的是不会维护http请求数据,http请求是独立的,非持久的.而越来越复杂的WEB应用,需要保存一些用户状 ...

  10. hadoop的核心思想

    hadoop的核心思想 1.1.1. hadoop的核心思想 Hadoop包括两大核心,分布式存储系统和分布式计算系统. 1.1.1.1. 分布式存储 为什么数据需要存储在分布式的系统中哪,难道单一的 ...