融合模型权限管理设计方案

发布时间:2022-08-19 13:51

动手点关注 干货不迷路 

名词解释

ITAM:ITAM 是对 IT 办公资产--实物资产 (如笔记本电脑)、软件资产 (如 Office365)--进行生命周期管理的系统。

ITAM-Auth:ITAM 系统的鉴权服务。

ITAM-Data:ITAM 系统的数据服务。

SaaS:软件即服务(英语:Software as a Service,缩写:SaaS),一种软件交付模式。在这种交付模式中,软件仅需通过网络,不须经过传统的安装步骤即可使用,软件及其相关的数据集中托管于云端服务。

ServiceNow:ServiceNow 是一家美国软件公司,总部位于加州圣克拉拉,该公司开发了一个云计算平台,帮助企业管理企业 IT 工作流。ServiceNow 由弗雷德·卢迪于 2003 年创立,在纽约证券交易所上市,是罗素 1000 指数和标准普尔 500 指数的组成股。2018 年,《福布斯》杂志将其评为全球最具创新性公司的第一名。

背景

本方案梳理了业界主流权限模型,IT Saas 化中权限管理要解决的问题,参考了公司内外、国内外的一些权限设计方案,结合 RBAC、ABAC 模型提出了 ITAM 融合模型权限管理方案。

主流权限模型

参考了多个系统的权限实现后,总结出公用的权限理论模型,具体到每个系统的实现会有一些改造和优化,本部分介绍工业界广泛使用的权限模型。

概述

主体:一个访问行为的发起方,此处简化理解,假设都是用户

客体:访问行为的施加对象,如页面、功能、数据

融合模型权限管理设计方案_第1张图片

ACL (Access-Control List 访问控制列表)

Subject:主体,访问方,可以是人也可以是系统、设备等

Action:访问的具体动作,如 Create、Read、Edit...

Object:客体,被访问方,可以是系统中的某个条目、某个文件等

一种比较基础的权限管控机制,简单直接,常应用于操作系统中的文件系统。

融合模型权限管理设计方案_第2张图片

MAC (Mandatory Access Control 强制访问控制)

Subject:主体,访问方,可以是人也可以是系统、设备等

Action:访问的具体动作,如 Create、Read、Edit...

Object:客体,被访问方,可以是系统中的某个条目、某个文件等

Attributes:在 Subject 和 Object 上均可能有多个 Attributes ,用于鉴权判断的元数据

主体和客体会被分别赋予一个机密等级,访问时双向检查主体和客体的等级是否匹配,常被应用于安全要求性高的领域,如军事、金融、政府、计算机系统安全等,双向鉴权时遵循 authorization rule,该 rule 的存储位置和管理通常非常严格。

融合模型权限管理设计方案_第3张图片

DAC (Discretionary Access Control 自主访问控制)

Subject:主体,访问方,可以是人也可以是系统、设备等

Action:访问的具体动作,如 Create、Read、Edit...

Object:客体,被访问方,可以是系统中的某个条目、某个文件等

Grant:转授权行为,Subject 1 可对 Object 执行的全部或部分 Action 转授给 Subject 2

自主访问控制简单理解是权限 Subject 可将自己拥有的权限转移给其他主体,通常是为了解决权限分配灵活度的问题,但是在 B 端系统里往往不会仅仅采用 DAC 这一种权限模型(比如会结合 MAC 模型),因为该模型会导致管理员无法掌控的权限扩散。

融合模型权限管理设计方案_第4张图片

RBAC (Role Based Access Control 角色访问控制)

RBAC 认为权限的本质是 Who 对 What 进行了 How 操作

User:主体,访问方,代表系统中的用户,但也可以是机器、网络等 - Who

Object:客体,被访问方,可以是系统中的某个菜单、按钮、数据记录、API 等 - What

Operation:系统中用户可执行的某个动作 - How

Permissions:权限,代表可向 RBAC 保护下的 Object 执行 Operation (What + How)

Role:角色,代表组织内一些职责及该职责下的用户拥有某些指定的权限

Session:会话,会话由一个用户触发,同时会话激活会话关联的一个或多个 Role

本文重点介绍被 INCITS(国际信息技术标准委员会) 采纳的标准 RBAC 模型

标准 RBAC 分为 4 个子模型:

RBAC0 - Core RBAC

融合模型权限管理设计方案_第5张图片

RBAC1 - Hierarchical RBAC

融合模型权限管理设计方案_第6张图片
  • 一般继承:角色之间的是一个绝对偏序的继承关系(有向无环,成环的角色继承无意义),这个设计比单一的树状继承更自由,适用于角色权限有继承需求但又不是严格的上下层级关系的权限场景。

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号