网站备案 取名资讯通不过,收费下载网站源码,今天安阳最新消息,去哪优化网站关键词一个用户可以成为很多角色的成员#xff0c;一个角色可以有许多用户。类似地#xff0c;一个角色可以有多个权限#xff0c;同一个权限可以被指派给多个角色。每个会话把一个用户和可能的许多角色联系起来。一个用户在激发他或她所属角色的某些子集时#xff0c;建立了一个…一个用户可以成为很多角色的成员一个角色可以有许多用户。类似地一个角色可以有多个权限同一个权限可以被指派给多个角色。每个会话把一个用户和可能的许多角色联系起来。一个用户在激发他或她所属角色的某些子集时建立了一个会话。用户可用的权限是当前会话激发的所有角色权限的并集。每个会话和单个用户关联。这个关联在会话的生命期间保持常数。一个用户在同一时间可以打开多个会话例如在不同的工作站屏幕窗口各一个。每个会话可以有不同的活动角色。会话的概念相当于传统的访问控制中主体subject的标记。
一个主体是一个访问控制单位一个用户在同一时间可以拥有多个不同活动权限的主体或会话。
3. UML 概览
UML 是通用的可视化建模语言我们可以使用它阐述、可视化和文档化软件系统的组成部分。现在UML 已经是软件工程的标准语言。UML 包括用例建模静态建模和动态建模。在用例建模中通过用例和执行者阐述系统的功能需求。用例由执行者引发描述了执行者和系统之间的交互。静态建模提供系统的结构视图信息在这个视图中通过类、类属性和与其他类的关系relationship表示。关系包括关联association、泛化/特化generalization/specialization、聚合。动态建模表现系统的行为视图。它可以通过对象协作图、顺序图或状态图来描述。对象协作图和顺序图用来描述对象和其他对象在执行用例时的协作。依赖于状态的对象使用状态图来描述 [5]。
本文中我们使用类图、用例图和对象协作图分别作为RBAC 模型的静态视图、功能视图、动态视图。在本文的剩下内容中我们使用了 [1, 7, 10]中介绍的UML 标记符。
4. 基于UML 的 RBAC 表示
RBAC 中的组成部分是用户、角色、权限、会话和约束。为了使用UML 表示RBAC 模型我们使用对象类的标记分析每个组成部分。在本文后面部分中我们的分析分为三个不同的视图静态视图、功能视图和动态视图。 图2 类图概念静态模型
RBAC 的概念静态模型如图2 所示包括类、类之间的关系和关系的势。基本的实体是用户、角色、权限、约束和会话类。角色和权限类分别特化出两种类别使用者和管理者。这个特化依赖于用户的资历。RBAC 模型的约束可以有很多种形式依赖于应用系统。为了简化分析模型我们静态模型中的约束只有三个用户约束、权限约束、会话约束。另外静态模型还有一个特殊的类session hour当用户建立一个会话来激活他/她的角色时该类被使用。这对表达基于会话的约束很有用。例如一个组织可以要求用户只能在某些时间建立会话。为了强化这类约束我们需要跟踪每个会话的会话时间。实体类的属性在图3 中定义。 图3 实体类的属性