文末会有一份重点内容梳理图送给大家,是针对这几篇文章的内容!
本文主要介绍几种常见授权机制的概念和原理,以及在实际工作中我们该如何去选取合适的保护机制。这些通用的机制看起来可能比较抽象,但“磨刀不误砍柴工”,理解了宏观上的知识基础,对我们以后学习各类具体的防御机制会有很大的帮助。
其次我个人认为,“授权”和“访问控制”其实是同一个概念,都是允许或者禁止某个用户做某件事情。现在行业内普遍用“访问控制”这个术语来讨论相关问题。因此,后面我都会用“访问控制”来替代“授权”。
访问控制模型
如何具体的理解这个模型呢?你可以这样想:在用户去读取文件的过程中,用户是主体,读取这个操作是请求,文件是客体。下面我来详细介绍一下。
-
主体:请求的发起者。主体可以是用户,也可以是进程、应用、设备等任何发起访问请求的来源。
-
客体:请求的接收方,一般是某种资源。比如某个文件、数据库,也可以是进程、设备等接受指令的实体。
-
请求:主体对客体进行的操作。常规的是读、写和执行,也可以进一步细分为删除、追加等粒度更细的操作。
常见的访问控制机制
访问机制是否对请求进行授权,决定着这个操作能否顺利执行下去。所以,对于我们来说,了解访问机制的规则至关重要。常见的访问控制机制有 4 种:DAC、role-BAC、rule-BAC、MAC。