关关涉及安全管理的一词均只针对本公司推出

关关涉及安全管理的一词均只针对本公司推出

角色和权限

概括:

用户是登录系统的关键,角色是用户权限的基础。 向用户授予角色时,权限不能超过角色权限,但可以小于角色权限。 当用户同时扮演多个角色且具有重复权限时,重复权限仅有效一次,该用户拥有其所扮演的所有角色的权限并集。 查询时,业务功能模块列表的树形结构中显示用户和角色所拥有的系统权限。 对象控制是通过角色和用户授权来实现的。

简介 1.1。 关键词定义

相关定义如下:

安全管理:计算机技术安全管理的范围非常广泛,可以包括网络安全、数据安全、操作系统安全、应用安全等。安全管理的大部分方面已经有了成熟的产品,我们只需要根据情况选择性地使用即可。以满足我们自己的需要来实现我们的目标。 本文提到的“安全管理”一词仅适用于我公司推出的应用程序中的相关对象和数据。

主体:任何能够向应用系统发出应用请求的实体,包括各种用户、与系统交互的其他应用程序以及非法入侵者。 系统必须具有识别主体的能力,而界面实际上是由用户注册的。 因此,主要问题是验证用户身份的合法性。 系统应建立用户认证机制来验证用户的身份。

用户:用户是能够独立访问计算机系统中的数据或数据所代表的其他资源的主体。 我们使用 USERS 来表示用户集。 用户一般指人。

权限:权限是访问计算机系统中的数据或数据所代表的其他资源的权限。 我们使用 PERMISSION 来表示一组权限。 它可以分为两种类型:对象访问控制和数据访问控制。

对象访问控制:用元组表示:(控制对象,访问类型)。 控制对象代表系统中需要访问控制的所有资源。 我们将介绍一套完整的资源表示方法来定义和引用系统中出现的各种资源(详见下文)。 访问类型是指对相应受控对象的访问控制,如:读取、修改、删除等。

数据访问控制:如果数据访问不受控制,系统的安全性无法得到保证,很容易发生数据泄露。 因此,对象可访问的数据必须在权限上进行不同级别的加密和保护。 我们还用一个元组来表示:(控制对象,谓词)。

权限最终可以组合成以下形式:(控制对象、访问类型、谓词)。

角色:角色是组织或任务中代表资格、权利和责任的工作或职位。 我们使用 ROLES 来表示角色的集合。

用户委托:用户委托是USERS和ROLES之间的二元关系。 我们使用 (u, r) 来指示用户 u 已被分配角色 r。

权限配置:权限配置是ROLES和PERMISSION的二元关系。 我们用(r,p)来表示角色r有权限p。

需求分析

基于我们在该行业多年积累的经验,并参考其他同行的成功经验,融合先进理念,我们有能力为自己的应用系统开发功能齐全、灵活便捷的安全管理系统。 这使得开发人员摆脱了权限管理的重复性工作负担程序开发,让他们能够专注于应用程序的功能开发。 通过收集公司从事MIS项目开发经验丰富的软件工程师,我们对各种情况下对系统安全的要求做了以下总结。

该体系在安全管理方面应考虑以下几个方面。

2.1. 角色和用户

要求:角色由用户定义(这个用户不应该和下一行的“用户”有相同的定义。“客户”似乎更合适?是的,这里的用户确实倾向于指向客户的意思)我们的合同,但我认为这与下面定义的“用户”没有本质区别,因为客户最终使用系统是作为系统中注册的用户,而用户能够完成的功能是客户的两者之间的细微差别读者可以通过上下文和区分自行定义),并且可以根据不同的业务职位定义多个角色。

要登录系统,您首先需要向系统申请注册。 同一用户只能在系统中注册一次。

用户是登录系统的楔子,角色是用户权限的基础。 用户可以扮演多种角色。

角色授予用户时,其权限不能超过该角色的权限,但可以小于该角色的权限。

用户密码和数据库访问密码加密

分析说明

2.2.菜单控制

该菜单为系统业务功能菜单所必需。 由业务功能模块列表和用户菜单定制组成。 每个用户可以有自己的菜单,也可以直接使用角色默认菜单(当用户同时扮演多个角色且有重复权限时,重复权限仅有效一次)

分析说明

2.3.对象控制

需求对象是指应用系统窗口中的可视对象,例如菜单项、按钮、下拉列表框、数据编辑控件、数据编辑控件的字段等。 对象控制是通过角色和用户授权来实现的。

对象控制包括数据编辑控件中对象属性的控制和数据记录的维护权限:

分析说明

2.4.记录集控制

对需求记录集的控制是通过条件设置来实现的。 因此,需要对记录集进行控制的数据库表需要设置专门的记录集过滤字段,由用户根据位置定义过滤条件,建立过滤表进行统一管理。

分析说明

在为用户设置业务模块权限时,也在过滤表中设置该模块的数据编辑控件的数据过滤条件。 过滤条件是组成SQL语句的WHERE条件子句,强制当前访问的模块根据过滤条件对数据编辑控件进行过滤。 SQL 语句被重新组织并检索数据。 当需要从数据库中的多个表中获取数据时,过滤表中有多条记录,每条记录记录一个过滤条件,供数据编辑控件获取。 通过SQL语法分析服务可以生成并验证SQL语句的WHERE子句,利用对象提供的功能对SQL语句进行分析,拦截WHERE条件子句,验证新组合的SQL语句的合法性。 2.5. 权限分配管理

要求上述权限管理内容既要满足集中管理的目标,又要满足分散管理的目标。

分析说明

权限管理由系统管理员集中管理。 系统管理员的工作量太大了。 很难对各个岗位的分工有全面、具体的了解,也很难做出标准、详细的权限划分。 对于大型管理系统,适合设置一些权限。 交给一些更高级的用户,有利于各个岗位工作的细致和协调。 这就是权限的去中心化管理。 要实现权限的分散管理,需要对授权模块进行一些授权管理。 这就要求整个系统的授权安全管理必须细致,防止权限漏洞让某些高级用户拥有过多的权限。 方案设计3.1. 安全防护策略

从以上需求分析来看,我们需要一套既有效、便捷又灵活的安全管理解决方案。 应使用各种控制机制和密码保护技术。 安全防护策略是设计安全可靠系统的指南,通常涉及以下几个方面:

1、区分安全策略和安全组织。

2.政策是信息安全的高层指导。 战略是对用户需求、设备环境、组织规则、法律约束等进行详细研究而得出的,战略的重要性在于其指导作用。 组织是实施和执行各种战略的职能的集合。 健全的组织是实施正确安全策略的物质基础。 因此,组织通常需要实施不同的策略,以便在策略发生变化时无需更换安全机制。

3、安全策略:企业信息管理系统是一个大规模的分布式数据资源管理系统。 它包含的信息量巨大、信息敏感程度不同、访问需求的用户多种多样,使其安全管理非常复杂。 基于角色的系统安全控制模型是目前国际上流行的一种先进的安全管理控制方法。 我们的安全管理体系也根据自己的需要有选择地吸收了它的一些思想。 其特点是通过分配和取消角色来完成用户权限的授予和取消,并提供角色分配规则和操作检查规则。 安全管理员根据需要定义各种角色并设置适当的访问权限,而用户则根据其职责和资历分配给不同的角色。 这样,整个访问控制流程就分为两部分,即访问权限与角色关联,角色与用户关联,从而实现了用户和访问权限的逻辑分离。 如下图所示,角色可以看作是访问权限的一种表达。 控制策略的语义结构,可以表达承担特定工作的资格。

角色及权限第1张

由于实现了用户和访问权限的逻辑分离,基于角色的策略极大地方便了权限管理。 例如,如果用户的职位发生变化,只需删除用户当前的角色并添加代表新职位或任务的角色即可。 研究表明,角色/权限之间的变化相对于角色/用户关系之间的变化要慢很多,并且将用户委派给角色不需要太多技巧,可以由管理人员来完成,而为角色配置权限则相对复杂,需要一定的能力。技能。 可以由专门的技术人员来承担,但他们没有被授予委托用户的权限,这与现实是完全一样的。 基于角色的访问控制方法除了便于权限管理外开发学习,还可以很好地描述角色层次关系,实现最小权限原则和职责分离原则。

4、安全保护机制:本系统的安全保护机制与上述安全策略基本兼容。 系统保护的总体结构如下:

角色及权限第2张

保护机构应负责防止用户造成的一切物理损害和可能的操作损害,后者归结为主体可以以何种方式访问​​哪些对象。主体、访问类型和客体是保护机制的主要组成部分我们将要讨论。

5、安全管理职责:安全管理有集中管理和分散管理两种。 前者是指所有权限都由负责系统安全的专职人员或团队控制。 他们(他们)决定用户的访问权限并控制系统安全的各个方面。 后者意味着不同的管理员控制系统安全的不同方面,管理系统的不同部分,确定不同用户的访问权限,甚至允许对象所有者转移访问对象的权限。 集中管理,安全可靠但不灵活; 分散管理应考虑避免漏洞和协调问题。 由于该系统是针对大型集团公司设计的,产品权限的分配相对复杂,因此采用集中管理和分散管理相结合的方式。

6.访问控制策略。 它为确定用户访问权限提供了基础。 最重要和最普遍的原则之一是“需要了解”策略。 换句话说,只有工作需要的才是他应该知道的。 原则上,它限制了用户不必要的访问权限,从而阻止了许多破坏和泄露数据信息的方式。 根据这一原则授予用户的权限是允许用户完成其工作的最小权限集,因此也称为“最小权限策略”。

7.信息流控制。 在不考虑数据流的情况下限制用户的访问权限是极其危险的。 例如考勤时,各部门的主管只能对本部门的员工进行考勤,而人力资源部门可以提取所有数据,因此提取数据时必须进行限制。 控制数据流角色权限设计,防止未经授权的用户在数据流后获得访问权限。

8. 修改密码。 非常机密的数据可以转换成密码存储,使得不知道密码的入侵者无法破译获得的数据密码。 密码变换可以防止泄密,但不能保护数据信息不被破坏。

9、软硬结合保护。 这是安全防护的基本策略。 很多硬保护功能很难用软件来实现,有些即使能实现,效率也不高。

10. 对违反安全行为的响应。 各种保护机制都可能被破坏,因此系统必须制定检测手段和处置措施。

3.2. 安全管理组织机构分析

3.2.1. 功能框架示意图

内部整体功能框架图

角色及权限第3张

外部调用功能框架示意图

角色及权限第4张

3.2.2. 主要功能组件职责

3.2.2.1. 对象定义工具和权限定义工具

对象定义工具。 对象是指系统中的各种功能模块、数据、界面元素(包括菜单、按钮以及其他可以在各种界面上控制的控件)等,是主体可以访问的各种对象。 由于对象的保密级别不同,它们受到的保护程度也不同。 系统中的对象都是程序员通过系统提供的对象定义工具预先定义好的。 系统只能控制这些预先定义好的对象。 因此角色权限设计,对象定义是整个系统的核心步骤,直接影响到后续的各个安全控制环节。 建议开发程序员进行初始配置。 对象定义包括以下步骤:

对象定义(流程)流程图如下

角色及权限第5张

权限定义工具。 在定义系统对象的前提下,定义不同情况下对象的访问类型。 如果您希望对象在不同情况下具有不同的访问类型,则需要定义对象的权限。 定义权限意味着定义对象访问控制和数据访问控制。 为了表达方便,我们用一个三元组符号来表示权限P(o,t,p),其中o表示访问对象; t表示访问类型; p 代表谓词。 指示当谓词 p 为 true 时,可以访问类型 t 的对象 o。 权限定义是系统安全管理的基本步骤之一。 只有定义了各种对象的访问权限,才能为角色配置权限,实现基于角色的管理。 系统提供了定义权限的工具,要求程序员根据实际需要定义对象的权限。

权限定义流程图如下:

角色及权限第6张

3.2.2.2. 角色定义及权限配置

角色定义。 基于角色的访问控制方法的思想是将用户的授权分为两部分,利用角色作为用户权限的中介。 这样,用户与角色之间、角色与权限之间就形成了两种多对多的关系。 系统提供角色定义工具,用户可以根据自己的需要定义相应的角色(权限、职位、共享权责)。 角色之间存在对应的继承关系。 当角色r1继承另一个角色r2时,r1自动拥有r2的访问权限(即r1->r2)。 角色继承关系自然地体现了组织内部的权责关系,为便捷的权限管理提供了帮助。 角色继承关系提供了对现有角色进行扩展和分类的手段,使得可以在现有角色的基础上定义新的角色。 扩展是通过增加父角色的权限来定义子角色,分类是通过不同的子角色继承。 由相同的父角色反映。 另外,允许多重继承,即一个角色继承多个父角色,多重继承体现了角色的综合能力。

角色定义流程图如下:

角色及权限第7张

权利简介。 角色是一组访问权限。 一个用户可以是多个角色的成员,一个角色可以有多个权限,一个权限可以为多个角色重复配置。 权限配置是组织角色权限的步骤之一。 只有角色拥有相应的权限,用户委托才具有实际意义。

权限配置流程图如下:

角色及权限第8张

3.2.2.3. 用户和用户组定义

用户自定义。 系统的最终用户是用户,因此必须建立用户认证机制来注册用户的身份信息。 定义可以登录系统的用户操作系统是系统安全管理的必要步骤,也是人与系统之间的接口。 用户组定义。 为了使该系统适合分布式权限管理,增加了用户组的概念,用户组是指用户的集合。 用户组还可以委派角色,方便权限管理。 当用户添加到用户组时,该用户组所拥有的角色会自动委派。 为了方便系统去中心化的权限管理,系统还支持向某些群组下发权限,授权特定用户来管理用户群组的用户权限。

3.2.2.4. 权限审核:授权完成后,可以检查登录用户拥有的能力表信息,检查授予用户的权限是否合适。 如果没有,则可以重新执行用户委托和部分权限撤销。 目前,系统在用户组管理模式下只能撤销用户组内用户的部分权限。

3.2.2.5. 用户认证机构安全保护的首要问题是对用户身份进行认证。 目前有三种方法:一是利用用户的身体特征(声波、指纹、外貌、签名)。 这在理论上是最可靠的,但由于物理特性可能随时间变化、记录尚未成熟等原因,这种方法并未得到广泛应用。 其次,使用用户特定文档(例如身份证和机器可读卡)的缺点是这些文档可能被他人复制或欺诈使用。 第三,使用用户知道的可以证明其身份的东西(例如密码)。 这是目前比较常用的方法。 本系统采用的是第三种方法。

用户名

标识

其他情况

成达

好的

……

……

……

……

如上表所示,是用户认证机构保存的一张表,登记了每个用户的姓名、身份证明及相关信息。 表中的用户名通常是公开的,而身份是保密的。 当用户想要访问系统时,他或她必须首先在系统中注册您的姓名和徽标(即出示您的ID)。 此时,用户认证系统机制会检查用户的标识与用户表中的标识是否一致。 如果是,则认为用户的身份已得到确认。 否则视为假冒,系统将拒绝用户请求的操作。 密码是最常用的标识,通常由字母和数字的组合组成。 系统只允许用户连续注册两次或三次密码。 如果不正确,他们将需要等待很长时间才能重新注册。 这种延长时间的方法可以有效防止冒名顶替者猜测密码。

3.2.2.6. 访问控制机制 防止非法访问系统的主要方法是访问控制。 用户系统的访问规则可以用访问规则来表示,访问规则用于根据安全策略对用户0进行授权。 访问控制是关于如何表达和检查访问规则。 形式上来说,访问规则可以写成四元组(u,o,t,p)的形式,现有的权限表示可以重新表示为(u,P)。 系统访问控制分为模块级控制和界面元素级控制。

系统访问控制

角色及权限第9张

存储和检查访问规则是访问控制组织必须解决的问题的一部分。 为了考虑运行速度,本系统根据系统中的角色、权限配置、用户委托等关系,动态形成用户能力表,并保存在系统中。 它是由系统根据上述配置信息的变化动态生成并保存的。 能力表(也称为 C 表)是存储和检查访问规则的有效形式。 能力表是面向主体的,用于描述主体可以对该访问客体执行哪些操作。 能力表的基本形式如下:

(oi1,ti1,pi1)

…………

(oij、tij、pij)

其中,Si代表第i个科目; j是Si可访问的数据对象的数量; (oi1, ti1, pi1) 是访问权限。 所有主体的能力表集合就是系统的所有访问规则。 当需要对访问请求进行有效性检查时,根据访问请求的主题找到能力表,逐项检查,判断其是否有效。

安全管理控制核心

安全管理控制核心是系统安全管理的核心控制部分。 它控制着系统中整个系统的安全控制工作。 它决定系统是否启动安全管理,什么情况下调用访问控制机制,以及根据情况如何编写访问规则。 应用现有的访问规则来控制和存储访问规则。

系统评价4.1。 系统特性(自我评估)

安全管理体系的核心思想是在基于角色的控制思想的基础上提炼和完善的。

实现了系统开发过程中的职责分离。 系统的安全管理部分作为整个系统的核心控制部分,单独分离出来,制定整个系统的一些通用的安全准则。 程序员在开发过程中不应该过多考虑程序安全问题。 他们只需要遵循系统的安全准则即可。 相反,他们应该把主要精力花在系统的业务功能上。 有效利用系统现有资源,减少系统冗余,使系统更加组织化。 对于现有的功能模块,只需对各个界面元素设置不同的特性参数、实现不同的访问类型控制即可产生不同的控制效果,无需程序员编写程序。 基于角色的用户组访问控制:控制一组用户的访问比控制单个用户的访问更合理。 用户组代表具有相似工作属性的用户的集合。 完成用户组工作的角色可以被委派来控制用户组。 权限范围(当然我们也可以把角色看成是我们系统中的一个特定的用户组)。 同时支持角色继承和多重继承。 通过改变用户当前的角色集可以改变用户的权限,改变某个角色所包含的权限可以改变一组用户的权限。 这种访问控制方法具有三个作用: (1)简化 提供权限管理,避免用户和数据之间直接授权和取消。 研究表明,用户的权限很容易改变,并且某个角色对应的权限比较稳定; (二)有利于责任的合理划分。 用户只拥有应有的权限,从而避免越权行为。 关于用户组,关系描述支持这一点; (3)为了防止滥用权力,敏感工作被分配给多个不同的用户,需要合作的操作序列无法由单个用户完成。

支持动态改变用户权限:安全管理考虑到访问权限不是静态而是动态的情况。 所有客体的权限用三元组P(o,t,p)表示,系统中主体的访问规则用四元组(s,o,t,p)表示。 当产品系统使用工作流时,可以通过产品平台与安全管理控制核心之间的接口来重写访问规则和动态修改主体能力表。 动态分配用户完成当前工作流程步骤所需的权限。 权限的相互关系:各种权限不是相互独立而是相互关联的,权限可以感知其他用户的操作,可以描述相关的协同权限。 赋予数据编辑控件只读权限、撤销用户插入、删除数据的权限等功能。 该权限允许感知其他用户的操作,例如用户更改数据等。提供便捷的授权/取消机制和检查机制:只需执行简单的分配操作即可完成授权,同时角色分配规则和主体访问规则控制指南基于模型的应用程序。 用户之间的授权关系:基于角色分配关系,运行系统中的用户可以自行管理角色,这提供了另一种动态改变用户权限的手段。 通常,角色分配的权限由在系统中承担管理职责的用户承担。

文章来源:https://tool.4xseo.com/article/188753.html